Pythonには、オブジェクトを直接ファイルに保存するための標準モジュールである pickle があります。このモジュールは、Pythonオブジェクトをシリアル化(バイトストリームに変換)し、後で元に戻すことができます。
以下は、Pickle形式のファイルを読み書きする方法です。
オブジェクトをPickle形式のファイルに保存する
import pickle
data = {'name': 'John', 'age': 30, 'city': 'Tokyo'}
with open('data.pkl', 'wb') as f:
pickle.dump(data, f)
この例では、辞書 data を data.pkl というファイルに保存しています。ファイルをバイナリモードで開いて、pickle.dump() 関数を使用してオブジェクトを保存しています。
Pickle形式のファイルからオブジェクトを読み込む
import pickle
with open('data.pkl', 'rb') as f:
data = pickle.load(f)
print(data) # {'name': 'John', 'age': 30, 'city': 'Tokyo'}
この例では、data.pkl ファイルからオブジェクトを読み込んでいます。ファイルをバイナリモードで開いて、pickle.load() 関数を使用してオブジェクトを読み込んでいます。
注意点として、pickleを使用する際には以下のような制限があります。
- ファイル形式がPython環境に依存してしまうため、他のプログラミング言語で利用する場合には適さない
- pickle形式のファイルは、オブジェクトの状態が変わった場合に正しく読み込むことができない可能性がある
以上が、PythonでのPickle形式のファイルの読み書きについての超絶ニッチな記事でした。