课时31:永久储存:腌制一缸美味的泡菜

目录:

  一、pickle模块

  二、课时31课后习题及答案

******************

一、pickle模块

******************

Python提供了一个标准模块,使用这个模块,就可以轻松地将列表、字典这类复杂类型存储为文件了。这个模块就是pickle模块。

它几乎可以把所有Python对象都转化为二进制的形式存放,这个过程称为pickling,那么从二进制形式转化回对象称为unpickling。

复制代码
import pickle

my_list = [123,3.14,'小甲鱼',['another list']]
pickle_file = open('D:my_list.pkl','wb')
pickle.dump(my_list,pickle_file)
pickle_file.close()
复制代码

分析以下:这里希望把这个列表永久保存起来(保存为文件),打开的文件一定要以二进制的形式打开,后缀名倒是可以随意,不过既然使用pickle保存,为了以后方便记忆,建议使用.pkl或.pickle。使用dump方法来保存数据,完成后记得保存,跟操作普通文本文件一样。

程序执行后,C盘会出现一个my_list.pkl的文件,用记事本打开之后显示乱码(因为它保存的是二进制形式),如图所示:

那么在使用的时候只需要用二进制模式先把文件打开,然后用load把数据加载进来:

import pickle

pickle_file = open('D:my_list.pkl','rb')
my_list =pickle.load(pickle_file)
print(my_list)

程序执行后又取回我们的列表了:

[123, 3.14, '小甲鱼', ['another list']]
>>> 

利用pickle模块,不仅可以保存列表,事实上pickle可以保存任何你能想象得到的东西。

*******************************

二、课时31课后习题及答案

*******************************

发表回复