网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

json和pickle数据序列化和反序列化

json序列化

创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站建设、成都做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的船山网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

info = {
    'name':'alex',
    'age':22
}

f = open("test.txt",'w')
f.write(str(info)) #把一个字典转换成字符串 从内存存到硬盘的过程叫序列化
f.close()

import json
info = {
    'name':'alex',
    'age':22
}

f = open("test.txt",'w')
#print(json.dumps(info))
f.write(json.dumps(info)) #把一个字典转换成字符串 从内存存到硬盘的过程叫序列化
f.close()                 #序列化dumps 函数不可以序列化 只能处理简单的跨平台数据交互

import json
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'])

import json
f = open("test.txt",'r')
data = json.loads(f.read()) #反序列化loads
print(data['age'])

import json
f = open("test.txt",'r')
#data = json.load(f) #等于data= json.loads(f.read()) 会报错 3.X只能load一次
for line in f:
    print(line)

 

pickle序列化

import pickle
def sayhi(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()

import pickle
def sayhi(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反序列化
import pickle
def sayhi(name):
    print("hello2,",name)

f = open("test.txt",'rb')
data = pickle.loads(f.read()) #反序列化loads pickle只能用在python里面,java不认
print(data["func"]("alex")) #反序列化只要函数名一样就可以,序列化的是整个的数据对象

import pickle
def sayhi(name):
    print("hello2,",name)
f=open("test.txt",'rb')
data = pickle.load(f) #等于data= pickle.loads(f.read())
print(data["func"]("alex"))


分享标题:json和pickle数据序列化和反序列化
URL网址:http://bjjierui.cn/article/ghcidd.html

其他资讯