Python 序列化处理

序列化  文件为dump  字符串为dumps
dumps()方法返回一个str,内容就是标准的JSON
loads()方法将其还原


在程序运行的过程中,所有的变量都是在内存
d = dict(name='Bob', age=20)

我们尝试把一个对象序列化并写入文件:
import pickle
d = dict(name='ljc', age = '23')
print(d)
pd = pickle.dumps(d)
print(pd)

pickle.dumps()方法把任意对象序列化成一个bytes,然后,就可以把这个bytes写入文件。或者用另一个方法pickle.dump()直接把对象序列化后写入一个file-like Object:
>>> f = open('dump.txt', 'wb')
>>> pickle.dump(d, f)   
>>> f.close()

JSON表示出来就是一个字符串,可以被所有语言读取,也可以方便地存储到磁盘或者通过网络传输。JSON不仅是标准格式,并且比XML更快,而且可以直接在Web页面中读取,非常方便。
JSON表示的对象就是标准的JavaScript语言的对象,JSON和Python内置的数据类型对应如下:

JSON类型        python类型
{}            dict
[]            list
"string"        str
123            int或float
true/false        True/False


import json
d = dict(name='ljc', age = '23')
print(d)
json_str = json.dumps(d)  #返回一个字符串  序列化为字符串
print(json_str) 
print(json.loads(json_str))     #字符串的反序列化
null            None

 

posted @ 2018-07-09 12:32  想翻身的猫  阅读(372)  评论(0编辑  收藏  举报