您的位置:首页 > 编程语言 > Python开发

python序列化和json

2015-11-01 11:22 585 查看


python 的序列化和反序列化用于内存之间的共享,包括服务器和客户端的共享,两个Python程序之间的共享,以及以字符串的形式存储到硬盘中。

pyhton 的pickle 可以对Python的各种数据类型进行操作,包括类,列表,对象等。pickle中只适用于Python。

硬盘存数据只能是字符串的形式,序列化这种方式实现两个程序之间内存数据的交互

#Python的序列化和反序列化
import pickle

li = ['xiaoli','xiaowang','12','3','4']
dumped = pickle.dumps(li)           #将列表进行了序列化
print dumped
loaded = pickle.loads(dumped)       #将序列化的数据进行了反序列化
print loaded


序列化的同时存储到文件中,以及在文件中反序列化

import pickle
li = ['xiaoli','xiaowang','12','3','4']
pickle.dump(li,open('F:/python practice/temp.pk','w'))      #将列表序列化之后存储到文件当中
print pickle.load(open('F:/python practice/temp.pk','r'))   #将文件中的数据读取出来进行反序列化


JSON的使用

json只能对简单的数据类型进行操作,不可以对类等一些复杂的数据类型进行操作。json是各种语言通用的一种格式。

json的操作和pickle的操作几乎相同

import json
li = ['xiaoli','xiaowang','xiaoming',12]
print json.dumps(li)            #将列表序列化
print json.loads(json.dumps(li))      #反序列化
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: