python的json/xml序列化

  

    
info = {
"name":"roger",
"age":12
}

f = open("test.txt","w")
f.write(str(info))
f.close()


f = open("test.txt","r")
data = f.read()
print(data["name"])
f.close()

会报错

使用eval()
f = open("test.txt","r")
data = f.read()
print(eval(data)["name"])
f.close()
用json的方式
import json
info = {'name':'roger','age':12}
print(json.dumps(info))
f = open("test.txt","w")
f.write(json.dumps(info))
import json
f = open("test.txt","r")
data = json.loads(f.read())
print(data["age"])
f.close()
再来一例子:pic
import pickle
def functest():
pass
info = {'name':'roger','age':12,'func':functest}
print(pickle.dumps(info))
f = open("test.txt","wb")
f.write(pickle.dumps(info))
import pickle
def functest():
pass
f = open("test.txt","rb")
data = pickle.loads(f.read())
print(data["age"])
f.close()
再来一例子
import pickle
def functest():
pass
info = {'name':'roger','age':12,'func':functest}
print(pickle.dumps(info))
f = open("test.txt","wb")
f.write(pickle.dumps(info))
 
 
import pickle
def functest():
print("test")
f = open("test.txt","rb")
data = pickle.loads(f.read())
print(data["func"]())
f.close()

上面的也可以这写:
import pickle
def functest():
pass
info = {'name':'roger','age':12,'func':functest}

f = open("test.txt","wb")

pickle.dump(info,f)

f.close()

import pickle
def functest():
print("test")
f = open("test.txt","rb")
data = pickle.load(f)
print(data["func"]())
f.close()


记住:dump一次,load一次。
shelve可以更好地支持持久化。
xml的解析
xml.etree.ElementTree



转载于:https://www.cnblogs.com/wherewhenwho/p/9035335.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值