目次

Python

各種ツールの変遷など

Pythonのパッケージ周りのベストプラクティスを理解する

argparse

コマンドラインオプション、引数、サブコマンドのパーサー

import argparse
 
parser = argparse.ArgumentParser(description='Process some integers.')
parser.add_argument('integers', metavar='N', type=int, nargs='+',
                   help='an integer for the accumulator')
parser.add_argument('--sum', dest='accumulate', action='store_const',
                   const=sum, default=max,
                   help='sum the integers (default: find the max)')
 
args = parser.parse_args()
print args.accumulate(args.integers)

参考

http://docs.python.jp/2/library/argparse.html

http://ja.pymotw.com/2/argparse/

chown

  import os
 
  os.chown(target, uid, gid)

chown -R のように再帰的に変更する場合

  for root, dirs, files in os.walk(target_dir):
    for dir in dirs:
      os.chown(os.path.join(root, dir), 888, 50)
    for file in files:
      os.chown(os.path.join(root, file), 888, 50)

エラー

以下のようなエラー

bash: ./pytest.py: /usr/local/bin/python2.7^M: bad interpreter: No such file or directory

windowsで作成したソースをアップロードして実行したときにたまに発生する。

改行コードを「LF」にしてやると治った。