这篇文章将为大家详细讲解有关如何理解序列化的pickle和json模块,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
用于序列化的两个模块
json:用于字符串和Python数据类型间进行转换
pickle: 用于python特有的类型和python的数据类型间进行转换
json提供四个功能:dumps, dump, loads, load
pickle提供四个功能:dumps, dump, loads, load
import pickle
data = ['aa', 'bb', 'cc']
# 转换成序列数据
p_str = pickle.dumps(data)
print(p_str)
# 从序列转换回数据
inverse_data = pickle.loads(p_str)
print(inverse_data)
# 转换成序列并写入文件
with open('tmp.pkl', 'wb') as f:
pickle.dump(data, f)
#从序列文件中读取数据
with open('tmp.pkl', 'rb') as f:
data = pickle.load(f)
print(data)
注意: pickle打开文件的方式必须使用'rb'或者’wb'即使用二进制读写。
import json
data = {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5, '你好': 6}
j_data = json.dumps(data)
print(j_data)
with open('data.json', 'w') as f:
json.dump(data, f)
# 读取数据
with open('data.json', 'r') as f:
data = json.load(f)
print(data)
json打开文件的方式必须使用'r'或者’w'即使用二进制读写。
关于如何理解序列化的pickle和json模块就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://my.oschina.net/u/4228078/blog/4555612