Pythonでは、pickle
という標準ライブラリを使用してオブジェクトをバイナリ形式で保存することが可能です。これにより、あらゆるデータをシリアライズして保存できます。
pickleとは
pickle
はPythonオブジェクトの直列化(シリアライズ)や非直列化(デシリアライズ)を扱うライブラリです。直列化とは、オブジェクトをバイト列などに変換した上で状態を維持することを指し、非直列化はその逆で、バイト列などに変換されたオブジェクトを元の形に復元することを指します。
pickleの基本的な使い方
まず、pickle
をimportし、pickle.dump()
の第一引数にオブジェクトを、第二引数にファイルを指定することで、指定したファイルのオブジェクトを保存できます。
import pickle
sample_list = [1, 2, 3]
with open('sample.pickle', 'wb') as f:
pickle.dump(sample_list, f)
このコードでは、sample_list
というリストをsample.pickle
という名前のファイルに保存しています。wb
モードを使うことで、バイナリ形式でオブジェクトを保存しています。
保存したオブジェクトを読み込む場合はpickle.load()
を使います。
import pickle
with open('sample.pickle', 'rb') as f:
loaded_list = pickle.load(f)
print(loaded_list) # Output: [1, 2, 3]
このコードでは、先ほど保存したsample.pickle
ファイルからオブジェクトを読み込んでいます。
以上がPythonのpickle
ライブラリを用いたオブジェクトのバイナリ保存と読み込みの基本的な方法です。これにより、Pythonオブジェクトの状態を保存し、その状態から取り出されることが可能になります。.