Pythonを使って、ファイルの読み込み・書き込みってどうやってやるんですか?txtファイルを開いて編集してみたいです。
まずはファイルの読み込み・書き込みをやってみよう。これができると、for文を使って複数のファイルを自動で処理できるようになるよ。
プログラムでファイルを開けると、前回習ったfor文とかを使って、大量のファイルを処理できたりしそうですね!
ファイルを使用するための関数を覚えて、ちょっとずつ勉強してみましょう!
<この記事の対象者>
・Pythonでファイルの読み込み・書き込みをしてみたい
・open, write関数を勉強したい
・for文を使って自動で複数のデータを処理したい
Pythonのファイルの作成・読み込み・書き込み方法について
Pyhonのインタラクティブシェルでファイルを作成してみましょう。
フォルダ(ディレクトリ)の作成・移動
はじめに、インタラクティブシェルでpythonを呼び出しましょう。使用するフォルダを選択して、新規に’test’というフォルダを作成してみます。インタラクティブシェルの操作方法は表のようになります。(わたしは無料のVisual studio codeを使用します)
コマンド | 内容 |
cd.. | 1つ前のディレクトリに移動 |
cd フォルダ名 | フォルダ名に移動 |
mkdir | ディレクトリ作成(フォルダ作成) |
では使用するフォルダまでcd コマンドを使って移動し、mkdir ‘test’(ディレクトリ作成)を行ってください。
このように、フォルダが作成されますので、フォルダに移動します。
空ファイルの作成・読み込み・書き込みを行ってみる
フォルダに移動したら、pythonを呼び出し、空ファイルを作成してみましょう。空ファイルの作成には、open()関数を使用します。
空ファイルの作成:test_file = open(‘test.txt’,’w’)
※test_fileという変数(名称はなんでもよい)
実行すると、testのフォルダ内に、’test.txt’ファイルが作成されます。次は、このファイルは現在空ですので、このファイルの書き込みをPythonから行います。
ファイルの書き込み:test_file.write(‘Thank you’)
上記を実行すると、インタラクティブシェル内に9という数字が出力されます。こちらは、writeの戻り値になっており、文字数を表しています。この状態で、text.txtを開いても、まだファイルは空のままです。入力するためには、flush()を入力します。
ファイルの中身を書き出す:test_file.flush()
この状態で、先ほど作成したtest.txtを開いてみると、このように、Thank youとファイル内に入力されています。以上で、ファイルの書き込みは完了です。
これで書き込みは完了です。終了する場合は、close()コマンドを使用します。一度ファイルを閉じましょう。
ファイルを閉じる:test_file.close()
Pythonでファイルの読み込みを行ってみる(open)
では次にファイルの読み込み方法を紹介します。ファイルの読み込みはファイル作成時と同じように、open関数を使用します。ただし読み込み時は、’r’とします。
ファイルの読み込み:test_file = open(‘test.txt’,’r’)
これでファイルの読み込みが行われました。次に、変数read_strにテキストファイルの1行を読み込みます。readline()という関数を使用すると、ファイルの先頭から1行を読み込むことができます。
先頭1行を読み込み、変数に入れる:read_str=test_file.readline()
これでread_strに読み込んだテキストファイルの1行が格納されました。読み込んだファイルをclose()で閉じ、read_strをprint()で出力してみましょう。
このように結果に‘Thank you’とテキストファイルに記載した内容が出力されました。今回の内容で、ファイルの作成・読み込み・書き込みの基礎的な内容が分かったと思います。
これら基礎的な内容については、こちらの本に詳しく記載されていますので、おすすめです。参考にしてください。
また、Udemyではこちらの講座でPythonの基礎的な内容を1500円程度で20時間以上の講座を買い取ることができます。プロの講師が動画で内容を教えてくれるため、非常に効率的にPythonの内容を理解することができるため、上の本1冊とこちらの動画を購入することをおすすめします。
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓おすすめ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓