ファイルに書き込む

Pythonでファイルに書き込むには、

>>> f = open("logfile.log", "w")
>>> f
<open file 'sample001.py', mode 'w' at 0x00AF4410>
>>> f.write("This is a pen!")
>>> f.close()
>>> print file("logfile.log").read()
This is a pen!

と言う事だ。OPEN関数の第二引数にモードを明記する。「r:read」「w:write」「a:append」との事。ファイルが存在しない場合「w」すると新規にファイルを作成してくれた。

>>> f = open("logfile.log", "a")
>>> f.write("This is it!")
>>> f.close()
>>> print file("logfile.log").read()
This is a pen!This is it!

思っているのと違った。改行も入れてくれるのかなと思ったが違った。改行は自分で入れろって事ですね。了解しました。ちなみに「r+」のようなおなじみの書き方もできるようです。

あと、「file()」って便利ですね。いちいちファイルをオープンさせないで中身を見ることができるんですから・・・たぶん内部でオープンしてるんでしょうけど。それとファイルをクローズしていないのに「file()」で読み込もうとすると、読み込めませんね。空行が返ってくるから何が起きたのか理解するまで時間を要した。

Pythonって知らない事だらけで、物凄く面白い。まだまだ興味が尽きませんね。