pickle模块 (泡菜)
pickle
模块实现了用于序列化和反序列化Python对象结构的二进制协议。 “Pickling”是将Python对象层次结构转换为字节流的过程, “unpickling”是反向操作,从而将字节流(来自二进制文件或类似字节的对象)转换回对象层次结构。pickle
模块对于错误或恶意构造的数据是不安全的。
重要方法:
pickle.dump( 绝对路径,打开要存的文件 )
pickle.load(打开要读的文件)
举例1:创建一个列表保存到文件
>>> import pickle #导入模块
>>> my_list = [123,456,"hahah",["A","B"]]
>>> pickle_file = open("mylist.pkl",'wb') #打开文件 这里一定要用 wb 二进制打开
>>> pickle.dump(my_list,pickle_file) #列表写入文件
>>> pickle_file.close() #注意要关掉文件
运行结果:
举例2:读取文件 用load
>>> pickle_file = open('mylist.pkl','rb') #打开文件
>>> my_list2 = pickle.load(pickle_file) #读取
>>> print(my_list2)
[123, 456, 'hahah', ['A', 'B']]