開発環境
- OS X Lion - Apple(OS)
- TextWrangler(Text Editor) (いずれはBBEditを入手したい!)
- Script言語: Python
『初めてのPython 第3版』(Mark Lutz 著、夏目 大 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-393-7)の 13章(whileループとforループ)の練習問題6を解いてみる。
6.
ファイルの内容を1行ずつ読み込む方法としてはreadlineメソッドを使う方法もあるが、現在では読み込みのためのメソッドを呼び出すコードを書かずforループを使って自動的にnextメソッドを呼び出す方法が最も望ましい。
その理由は、
- コードがシンプルになる。(読み込みのためのメソッドを書かずに済むため。)
- 実行速度が上がる。(実質的にPython仮想マシンではなくその内部のCのコードが動くようなものなので。)
- メモリが節約できる。(readlineメソッドを使う方法だとファイルの内容(文字列)をいったんすべてメモリにロードすることになるから。)
という3つのメリットがあるから。
実際に使ってみる。
入出力結果(Terminal)
ファイル(sample)はPerlの学習でパターンマッチで使用したファイルと同じ内容。
ちなみに、printでのカンマ「,」をなしにすると、ファイル内容の改行に加えて出力時にも各行に改行が追加されることになって、上記の出力結果に各行の次の行に空白の行が加わる。
入出力結果(Terminal)
0 コメント:
コメントを投稿