码迷,mamicode.com
首页 > 其他好文 > 详细

pickle模块

时间:2018-10-09 00:44:57      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:pytho   持久   参数   .sh   elf   open   ict   必须   name   

pickle提供了一个简单的持久化功能,可以将对象以文件的形式存放到磁盘
pickle模块只能在python上使用,python中所有的数据类型【list,str,num,tuple,dict,set,对象】
pickle序列化的数据,只是给计算机识别,区别于乱码

序列化:将对象写到磁盘
反序列化:将对象从磁盘读取出来
import pickle
class Person:
    def __init__(self,name,age):
        self.name = name
        self.age = age

    def show(self):
        print(name:%s,age:%d%(self.name,self.age))

p = Person(张三,10)
p.show()


序列化 将对象存储到本地磁盘

‘‘‘
pickle.dump(obj,file,protocol = None)
obj:将要封装的对象
file:obj将要写入的文件对象,注意:file必须以二进制的方式打开文件,‘wb’
protocol:可选参数,表示告知pickle的协议,支持协议有0,1,2,3,默认协议为3

f = open(file1.txt,wb)
pickle.dump(p,f)
f.close()

 


反序列化:将存储在磁盘上的对象读取出来
‘‘‘
pickle.load(file)
file:要读取的文件对象,注意,file必须以二进制的方式打开文件,‘rb‘

f1 = open(file1.txt,rb)
result = pickle.load(f1)
print(result)
print(p)
result.show()

 

 

pickle模块

标签:pytho   持久   参数   .sh   elf   open   ict   必须   name   

原文地址:https://www.cnblogs.com/huiyichanmian/p/9757904.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!