📅  最后修改于: 2023-12-03 15:18:34.965000             🧑  作者: Mango
pickle
是Python标准库中的一个模块,可以将任何Python对象转化为一个字符串格式,也可以将这个字符串恢复为原本的Python对象。pickle.dump()
是pickle
模块中的一个函数,可以将一个Python对象写入一个文件。
pickle.dump(obj, file, protocol=None, *, fix_imports=True)
参数说明:
obj
:需要dump的Python对象。file
:需写入对象的文件描述符。protocol
:pickle使用的协议版本,必须是0, 1, 2, 3, 4或5,其中4和5仅在Python3.4及以上版本中进行支持。默认值为3。fix_imports
:如果为True,将对Python2中的插值语句进行调整,以便它们可以在Python3中恢复,否则它们会被存储为bytes字节码对象。默认值为True。pickle.dump()
函数没有返回值。
下面是一个简单的示例,将一个Python字典对象写入文件:
import pickle
data = {'a': 1, 'b': 2, 'c': 3}
# 将data对象写入文件
with open('data.pickle', 'wb') as f:
pickle.dump(data, f)
读取文件的过程可使用pickle.load()
函数进行。注意,在读取文件时,必须使用二进制模式('rb')打开文件。
with open('data.pickle', 'rb') as f:
data = pickle.load(f)
print(data)
输出结果:
{'a': 1, 'c': 3, 'b': 2}
可以看到,写入和读取的字典对象是相同的,这就说明pickle.dump()
和pickle.load()
函数成功地将Python对象存储为文件,并正确地恢复了该对象。