Python の pickle モジュールは、基本的なデータ シーケンスと逆シリアル化を実装します。 pickle モジュールのシリアル化操作を通じて、プログラム内で実行されているオブジェクト情報をファイルに保存して永続的に保存できます。pickle モジュールの逆シリアル化操作を通じて、最後のプログラムによって保存されたオブジェクトをファイルから作成できます。
基本インターフェース:
pickle.dump(obj, file, [,protocol])
注: オブジェクトobjをファイルfileに保存します。
プロトコルはシリアル化に使用されるプロトコルのバージョンです。0: ASCII プロトコル、シリアル化されたオブジェクトは印刷可能な ASCII コードで表されます。2: バージョン 2.3 で導入された新しいバイナリ プロトコル。前回のもの 。このうち、プロトコル 0 と 1 は古いバージョンの Python と互換性があります。プロトコルのデフォルト値は 0 です。
ファイル:オブジェクトが保存されるファイル状のオブジェクト。 file には write() インターフェイスが必要です。 file には、「w」モードで開かれたファイル、StringIO オブジェクト、または write() インターフェイスを実装するその他のオブジェクトを指定できます。プロトコル>=1 の場合、ファイル オブジェクトはバイナリ モードで開く必要があります。
pickle.load(file)
注: ファイルから文字列を読み取り、元の Python オブジェクトに再構築します。
ファイル: read() および readline() インターフェイスを持つファイルのようなオブジェクト。
簡単なコード
#使用pickle模块将数据对象保存到文件 import pickle data1 = {'a': [1, 2.0, 3, 4+6j], 'b': ('string', u'Unicode string'), 'c': None} selfref_list = [1, 2, 3] selfref_list.append(selfref_list) output = open('data.pkl', 'wb') # Pickle dictionary using protocol 0. pickle.dump(data1, output) # Pickle the list using the highest protocol available. pickle.dump(selfref_list, output, -1) output.close()