这篇文章将为大家详细讲解有关如何理解序列化的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模块就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。