Python's pickle module implements basic data sequence and deserialization. Through the serialization of the Pickle module we are able to save the object information running in the program to a file, to store it permanently, and through the Pickle module's deserialization, we are able to create from the file the last object saved by the program. This article and everyone to share is the Python development in the Pickle module related use, come together to see it.
Basic interface:
Pickle.dump (obj, file, [, Protocol])
Note: Save the object, obj, to file.
Protocol is the protocol version used for serialization, the 0:ASCII protocol, the serialized object is represented by printable ASCII code, 1: The old binary protocol, and the new binary protocol introduced by version 2:2.3, which is more efficient than the previous ones. where protocols 0 and 1 are compatible with older versions of Python. The default value for protocol is 0.
File: Object to which the class files are saved. File must have a write () interface, file can be an open with a ' W ' method or an Stringio object or any other object that implements the write () interface. If protocol>=1, the file object needs to be opened in binary mode.
Pickle.load (file)
Note: Reads a string from file and reconstructs it as the original Python object.
File: Class files object with Read () and ReadLine () interfaces.
A Simple Code
#使用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 ()
#使用pickle模块从文件中重构python对象
Import Pprint, pickle
Pkl_file = Open(' data.pkl ', ' RB ')
Data1 = pickle. Load (Pkl_file)
Pprint.pprint (DATA1)
Data2 = pickle. Load (Pkl_file)
Pprint.pprint (DATA2)
Pkl_file. Close ()
Source: Blog Park
A detailed description of how pickle modules are used in Python