首页 > 编程语言 > 详细

python基础 json and pickle

时间:2019-11-30 22:38:56      阅读:64      评论:0      收藏:0      [点我收藏+]
 1 import json, pickle
 2 #json 序列化与反序列化
 3 list1 = [1, 2, 3]
 4 #正常情况下文件只能写入二进制或者字符串,需要将其他类型数据写入文件需要将其序列化;json序列化的结果为字符串;json的结果可以跨语言使用
 5 with open("json.txt", "w", encoding="utf-8") as f:
 6     f.write(json.dumps(list1))
 7 #序列化以后的文件想读取其中内容需要反序列化
 8 with open("json.txt", "r", encoding="utf-8") as f:
 9     json_res = json.loads(f.read())
10 print(type(json_res), json_res)
11 #pickle序列化与反序列化。 json只能将列表 字典等标准对象进行序列化,类似下面函数进行序列化json就会报错;此时就需要使用pickle进行序列化和反序列化,pickle序列化的结果为二进制,pickle语法只能在python语言使用
12 def hello():
13     print("hello world")
14 dict1 = {"func":hello}
15 with open("pickle.txt", "wb") as f:
16     f.write(pickle.dumps(dict1)) #等价于pickle.dump(dict1, f)
17 with open("pickle.txt", "rb") as f:
18     pickle_res = pickle.loads(f.read()) #等价于pickle.load(f)
19     print(type(pickle_res), pickle_res)
20 #建议:对象的dump和load都应当dump一次和load一次

 

python基础 json and pickle

原文:https://www.cnblogs.com/flags-blog/p/11964133.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!