Pythonでファイルの読み込み・書き込みをするための基礎知識(with open)

Pythonでファイルの読み込み・書き込みをするための基礎知識(with open)

Pythonを最近やりはじめたので、自分の備忘録のためにもPythonに関するブログを記載していきたいと思います!

今回は、Pythonでファイルの読み込み・書き込みをするための基礎知識をブログにしたいと思います。

Pythonでファイルの読み込み・書き込みをするときに使うwith open

Pythonでファイルの読み込み・書き込みをする際には、with open()を使うのが良いようです。

よくPythonでPDFをいじるのですが、その際は以下のようにコードを記述します。

with open('test.pdf', "rb") as f:
    ここにやりたいことを書く

上のようにコードを記載するとtest.pdfファイルを読み込みすることができます。

元々open()というwithがないバージョンの関数もあるようなんですが、withをつけない場合はclose()という関数を添えてファイル操作を終わらせるという記述を明示的にする必要があるようです。

なのでwith open()を使った方が余計な記述を増やさずに済む点で便利かもしれないですね!

対象となるファイルの指定

open()のカッコの第1引数には、開いたり書き込みしたりしたいファイル名を指定します。

test.pdfと書かれている場合は、実行されているPythonと同一階層にあるtest.pdfを読み込んだり書き込んだりする、という動作になります。

書き込み・読み込みモードを指定する

open()のカッコの第2引数には、書き込み・読み込みモードのどれにするかを指定します。

代表的なものとしては以下のようなものがあります。

  • r・・・読み込みモードでファイルを開く
  • w・・・書き込みモードでファイルを開く
  • rb・・・読み込みモードでバイナリファイルを開く
  • wb・・・書き込みモードでバイナリファイルを開く

といった感じです。

PDFはバイナリファイルに相当するわけですね!

asの右側について

asの右側については、

実例・PyMuPDFと掛け合わせてPDF操作をしてみる

ジーズアカデミーに通っていたときから続けているプロジェクトの関係でPDF関連のライブラリを調査し続けていました。 Chat GPTの...

PythonPyMuPDFライブラリを使って、with open()の実践的な使い方を見てみたいと思います!

    with open(uploaded_file.filename, "wb") as temp_file:
        temp_file.write(uploaded_file.file.read())
    doc = fitz.open(uploaded_file.filename)

上のようにコードを記載すると、アップロードされたファイル(uploaded_file)をサーバ側で一時ファイルとして書き出し、書き出されたファイルを指定場所に指定した名前で保存します。

そして、その一時ファイルに対して何らかの操作を行う(今回でいうとPyMuPDFライブラリで何らかの操作を行う)という流れになっています。

まとめ

ということで、今回はPythonでファイルの読み込み・書き込みをするための基礎知識(with open)という記事を書いてみました!

シェアする

  • このエントリーをはてなブックマークに追加

フォローする