序列化模块

先引用模块:
一.import json
1.通过模块json.loads吧字符串转换成Python的基本数据类型,,通过json反序列化时一定记得里面是双引号。
2.通过模块json.dumps吧python基本数据类型转换成字符串。
3.通过json。dump吧Python基本数据类型转换成字符串并写入一个文件里面。
4.在文件里面读出字符串并转换成Python基本数据类型。

import json
n='{"k1":12}'
m=json.loads(n)
print(type(m),m)
h=json.dumps(m)
print(type(h))

 



二.import pickle
1.通过模块pickle.dumps吧python基本数据类型转换成字符串(只有Python认识的字符编码)
2.通过模块pickle.loads吧字符串(只有Python认识的字符编码)转换成Python基本数据类型
3.通过模块pickle.dump吧python基本数据类型转换成字符串(只有Python认识的字符编码)并写入文件。
4.通过模块pickle.load从文件里面吧吧字符串拿出来(只有Python认识的字符编码)转换成Python基本数据类型。
5.通过模块pickle可能python2.7序列化的用3.5反序列化不回来。
import pickle

li=[1,2,3]
pickle.dump(li,open('db',"wb"))#吧一个python数据序列化成只有python认识的字符串并写入文件。
h=pickle.load(open('db','rb'))#吧文件中的python数据读出来。
print(h)

 


三.json 和pickle的区别
1.json和pickle的区别是前者只支持python基本的数据类型而pickle 支持所有的Python数据类型。
2.json 更合适跨语言操作,字符串基本数据类型。
3.pickle,可以对python所有类型序列化,仅适用于python
四.实例
dic={"k1":"v1"}#通过模块json.dumps吧python基本数据类型转换成字符串
print(dic,type(dic))

h=json.dumps(dic)
print(h,type(h))
import json
loads
dic1='{"k1":123}'#通过模块json.loads吧字符串转换成Python的基本数据类型,,通过json饭序列化时一定记得里面是双引号。

g=json.loads(dic1)
print(g,type(g))

import json
i1=[1,2,3,4]

json.dump(i1,open('hhh','w'))#通过json。dump吧Python基本数据类型转换成字符串并写入一个文件里面。
h=json.load(open("hhh","r"))#在文件里面读出字符串并转换成Python基本数据类型。
print(h,type(h))
json和pickle的区别是前者只支持python基本的数据类型而pickle 支持所有的Python数据类型
pickle的应用场景(比方说存档游戏)
json 更合适跨语言操作,字符串基本数据类型
pickle,可以对python所有类型序列化,仅适用于python
'''
import pickle


#i1=[1,2,3,4]
#i2=pickle.dumps(i1)
#print(i2,type(i2))

#result=pickle.loads(i2)
#print(result)
#i1[1,2,3,3]
#pickle.dump(i1,open("hhh","wb"))
hh=pickle.load(open("hhh","rb"))
print(hh)


posted @ 2016-10-06 19:34  200六  阅读(136)  评论(0编辑  收藏  举报