json和pickle数据序列化和反序列化-创新互联
json序列化
创新互联建站专注于网站设计制作、成都网站设计、网页设计、网站制作、网站开发。公司秉持“客户至上,用心服务”的宗旨,从客户的利益和观点出发,让客户在网络营销中找到自己的驻足之地。尊重和关怀每一位客户,用严谨的态度对待客户,用专业的服务创造价值,成为客户值得信赖的朋友,为客户解除后顾之忧。info = {
'name':'alex',
'age':22
}
f = open("test.txt",'w')
f.write(str(info)) #把一个字典转换成字符串 从内存存到硬盘的过程叫序列化
f.close()
importjson
info = {
'name':'alex',
'age':22
}
f = open("test.txt",'w')
#print(json.dumps(info))
f.write(json.dumps(info)) #把一个字典转换成字符串 从内存存到硬盘的过程叫序列化
f.close() #序列化dumps 函数不可以序列化 只能处理简单的跨平台数据交互
importjson
info = {
'name':'alex',
'age':22
}
f = open("test.txt","w")
json.dump(info,f)
info["age"]=21
json.dump(info,f) #一般只dump一次,因为3.x版本只能load一次,dump多次没意义
f.close()
json反序列化
f = open("test.txt",'r')
data = eval(f.read())
f.close()
print(data['age'])
importjson
f = open("test.txt",'r')
data = json.loads(f.read()) #反序列化loads
print(data['age'])
importjson
f = open("test.txt",'r')
#data = json.load(f) #等于data= json.loads(f.read()) 会报错 3.X只能load一次
forline inf:
print(line)
pickle序列化
importpickle
defsayhi(name):
print("hello,",name)
info = {
'name':'alex',
'age':22,
'func':sayhi
}
f = open("test.txt",'wb')
#print(pickle.dumps(info))
f.write(pickle.dumps(info)) #pickle可以序列化所有的数据
f.close()
importpickle
defsayhi(name):
print("hello,",name)
info = {
'name':'alex',
'age':22,
'func':sayhi
}
f = open("test.txt","wb")
pickle.dump(info,f) #等于f.write(pickle.dumps(info))
#pickle.dump(对象,文件)
f.close()
pickle反序列化
importpickle
defsayhi(name):
print("hello2,",name)
f = open("test.txt",'rb')
data = pickle.loads(f.read()) #反序列化loads pickle只能用在python里面,java不认
print(data["func"]("alex")) #反序列化只要函数名一样就可以,序列化的是整个的数据对象
importpickle
defsayhi(name):
print("hello2,",name)
f=open("test.txt",'rb')
data = pickle.load(f) #等于data= pickle.loads(f.read())
print(data["func"]("alex"))
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
当前名称:json和pickle数据序列化和反序列化-创新互联
转载来于:http://myzitong.com/article/ihspg.html