Python标准库pickle

xiaoxiao2021-02-28  92

Python提供了一个标准库,名为pickle,它可以保存和加载几乎任何Python数据对象,包括列表。

使用pickle很简单:只需要导入所需的模块,然后使用dump()保存数据,以后某个时间使用load()恢复数据。处理数据时的唯一要求是,必须以二进制访问模式打开这些文件。

>>> import pickle >>> with open('mydata.pickle','wb')as mysavedata: pickle.dump([1,2,'Three'],mysavedata) >>> with open('mydata.pickle','rb')as myrestoredata: a_list=pickle.load(myrestoredata) >>> print(a_list) [1, 2, 'Three'] “腌制”后的数据:mydata.pickle

“b”告诉Python以二进制模式打开数据文件。

腌制或者解除数据腌制时如果出了问题,pickle模块会产生一个PickleError

腌制:

try: with open('man_data.txt','wb') as man_file,open('woman_data.txt','wb')as woman_file: pickle.dump(man,man_file) pickle.dump(woman,woman_file) except IOError as err: print('File error:'+str(err)) except pickle.PickleError as perr: print('Pickling error:'+str(perr)) 读取(解除):

try: with open('man_data.txt','rb') as man_file,open('woman_data.txt','rb')as woman_file: new_man = pickle.load(man_file) new_woman = pickle.load(woman_file) except IOError as err: print('File error:'+str(err)) except pickle.PickleError as perr: print('Pickling error:'+str(perr)) 展示:

>>> nester.print_lol(new_man) Hi. How are you? I'm file,too. Thanks. >>> nester.print_lol(new_woman) Hi. I'm fine,thank you.And you? Okay.hi:

转载请注明原文地址: https://www.6miu.com/read-28809.html

最新回复(0)