“Pickle” 是 Python 中的一个模块,它提供了将 Python 对象进行序列化(转换为字节流)和反序列化(将序列化的数据转换回对象)的功能。它用于对象的序列化和反序列化,即将复杂的数据结构,如列表、字典、类等,转换为可以存储在文件中或通过网络传输的字节流。当需要时,可以将字节流转换回原始的数据结构。
Pickle 模块是 Python 标准库的一部分,提供了两个主要的方法,即 “pickle.dump()” 和 “pickle.load()”,用于分别对对象进行序列化和反序列化。它通常用于保存和加载机器学习模型、缓存数据以及存储复杂的数据结构等任务。
以下是一个使用 pickle 的基本示例:
# 序列化对象并将其保存到文件中with open('data.pickle', 'wb') as file:
pickle.dump(data, file)
#从文件中反序列化对象with open('data.pickle', 'rb') as file:
loaded_data = pickle.load(file)
print(loaded_data) # 输出:{'name': 'John', 'age':25, 'city': 'New York'}
在这个示例中,我们创建了一个名为 “data” 的字典对象,并使用 “pickle.dump()” 方法将其序列化并保存到名为 “data.pickle” 的文件中。之后,我们使用 “pickle.load()” 方法从文件中反序列化对象,并将其赋值给变量 “loaded_data”。最后,我们打印加载的数据以验证其与原始对象的匹配性。