Pyuthonにおけるファイルの読み書きに関するメモです.
Pythonでファイルを読み出すには以下の3つのステップが必要です.
- open() 関数を呼び出し,File オブジェクトを取得する.
- File オブジェクトの read() や write() メソッドを呼び出して読み書きをする.
- File オブジェクトの close() オブジェクトを呼び出してファイルを閉じる.
上記 1. のopen() 関数を使ってファイルを開くには,以下のようにします.
ここで,file_nameは読み込んだファイルを保管する変数名,Folder name は現在のカレントディレクトリで,File name.txt はカレントディレクトリ(Folder name)にあるFile nameというテキストファイルを指します.
open() を呼び出すと「テキストファイルを読む」読み込みモードでファイルを開きます.なので,ファイルに書き込んだりと変更を加えることはできません.open() のでふぉるとのモードは読み込みモードですが,以下のように第2引数に 'r' を明示的に記載することもできます('r' は read の頭文字).
なお,ここで f としているのは良く使われるからという理由だけで,任意の名前を使用することができる.
Pythonでファイルに書き込むことができますが,上記のように読み込みモード('r')で開いたファイルには書き込むことはできません.
ファイルに書き込みを行うには,以下のように書き込みモード('w'),もしくは追記モード('a')でファイルを開く必要があります.なお,書き込みモードは既存のファイルを上書きして最初から書き直すことになります.
open() で開いたファイルオブジェクトは close() メソッドで閉じる必要があります.上記のようにして開き,file_name という変数に保管したファイルを閉じるには以下のようにして閉じる必要があります.
ファイルと閉じ忘れを予防するには,以下のように with ブロックを使うと,ブロックの終了時に自動的にクローズされるので閉じ忘れがなくなります.インデント以下の f の形式を書くというのは命令で,自由に指定できます.
たとえば,上記のようにfの形式を書きこむのではなく,表示したい場合は以下のようにprint() とします.