I ♥ WordPress

[時間割:Python]『みんなのPython』その5
2008/09/14 21:59 posted by kunkichi

木曜日の『Python』の勉強結果をアップしてなかったので。ファイル処理から。

みんなのPython
みんなのPython
posted with amazlet at 08.08.21
柴田 淳
ソフトバンククリエイティブ
売り上げランキング: 50252


ファイル処理

  • openとかcloseとかほとんど他言語と変わらない。
  • ファイルオブジェクト。ファイルハンドルみたいなのと同じ。
  • ファイルオブジェクトに対してメソッドを使っていろいろ処理。
  • 1行づつ処理するには readlines()メソッドが便利。
    f = open("aaa","r")
    for i in f.readlines():
      i
  • ファイルオブジェクト自体をfor の対象にすることもできる。
    f = open("aaa","r")
    for i in f:
      i
  • 全部読み込む場合はread()メソッド、1行だけ読み込む場合はreadline()メソッドもあり。
  • 書き込みの場合はwrite()メソッド、シーケンスとかの場合はwritelines()メソッドもあり。
    f = open("aaa","r")
    f2 = open("bbb","w")
    for i in f.readlines():
       f2.write(i)
    f.close()
    f2.close()

スクリプトファイル

  • 拡張子は「.py」
  • SHEBANG。”#!/usr/bin/env python”とか。
  • pythonでは、関数とかは最初に宣言してmainをあとに書く感じなのね。シェルスクリプトっぽい。
  • ファイルを直接実行した時のみ実行、みたいな特殊なブロックもあり。
    if __name__ == '__main__':
      〜コード〜
  • コマンドライン引数には、sysモジュールを使うと、sys.argvに文字列のリストとして登録される。
    #/usr/bin/env python
     
    import sys
     
    print sys.argv
    # ./aaa.py aaa bbb
    ['./aaa.py', 'aaa', 'bbb']

ちょっとしたツールとして使うために必要な情報が揃ってきた感じです。

コメント&トラックバック

トラックバックURL





このページの先頭へ