Python模块_json & pickle模块

#json模块
import json
#json就是字符串,一种json风格的字符串,json类型来自js语言
#json作用:统一传输的字符串格式,在各个语言间数据传输的一种通用格式
s1 = {'name':'who r u'}
data1 = json.dumps(s1) #将s1转换成json类型的字符串,json会把'(单引号)变成"(双引号)
f1 = open("json.txt","w",encoding="utf-8") #读取的是字符流
f1.write(data1)
f1.close()

f2 = open("json.txt","r")
data2 =  json.loads(f2.read()) #读取json类型格式的字符串
print(data2,type(data2)) #格式是dic字典的形式
print(data2["name"]) #根据key得到value


#pickle模块
import json,pickle
#pickle和json用法完全一样,不过读取的内容跟json不一样,我们看不懂
#pickle是一种序列化对象,只能用于python
s1 = {'name':'who r u'}
data1 = pickle.dumps(s1) 
f1 = open("pickle.txt","wb") #读取的是字节流
f1.write(data1)
f1.close()

f2 = open("pickle.txt","rb")
data2 = pickle.loads(f2.read()) 
print(data2,type(data2)) #格式是dic字典的形式
print("结果:",data2["name"]) #根据key得到value

 序列化:把对象(变量)从内存中变成可存储或者可传输的过程为之序列化

反序列化:把变量内容从序列化的对象重新读取到内存称为反序列化,即unpickling

posted on 2019-07-09 17:32  詹生  阅读(125)  评论(0编辑  收藏  举报

导航