python中的pickle
时间: 2023-10-23 22:21:49 浏览: 107
Python基础——pickle(保存与提取数据)
pickle是Python的一个标准模块,它可以将Python对象序列化为一种二进制格式,也可以将这种二进制格式反序列化为Python对象。pickle模块提供了dump、load、dumps、loads等函数来完成序列化和反序列化的过程。
例如,我们可以使用pickle将一个Python对象序列化为二进制格式,然后将其保存到文件中:
```python
import pickle
data = {'name': 'John', 'age': 30, 'city': 'New York'}
# 将数据序列化为二进制格式
with open('data.pkl', 'wb') as f:
pickle.dump(data, f)
```
然后,我们可以使用load函数将这个二进制格式的数据从文件中加载出来:
```python
import pickle
# 从文件中加载数据
with open('data.pkl', 'rb') as f:
data = pickle.load(f)
print(data) # {'name': 'John', 'age': 30, 'city': 'New York'}
```
注意,pickle只能序列化Python的一些基本类型,如数字、字符串、列表、元组、字典等。如果要序列化一个自定义的类,那么这个类必须实现__getstate__和__setstate__方法。
阅读全文