0
点赞
收藏
分享

微信扫一扫

序列化,反序列化存储加载方式整理

覃榜言 2022-05-05 阅读 53

1,pickle

import pickle
def save_pkl(path,obj):
pickle_file = open(path,'wb')
pickle.dump(obj, pickle_file)
pickle_file.close()
print("保存成功")
def load_pkl(path):
pickle_file = open(path,'rb')
obj=pickle.load(pickle_file)
pickle_file.close()
print("读取成功")
return obj

a=[1,2,3,4]
save_pkl("./list_a.pkl",a)

2, json

import json

my_dict = { 'Apple': 4, 'Banana': 2, 'Orange': 6, 'Grapes': 11}
# 保存文件
tf = open("myDictionary.json", "w")
json.dump(my_dict,tf)
tf.close()
# 读取文件
tf = open("myDictionary.json", "r")
new_dict = json.load(tf)
print(new_dict)
# # 序列化
# # 将python对象 变成 json字符串
# # 我们在使用scrapy框架的时候  该框架会返回一个对象 我们要将对象写入到文件中 就要使用json.dumps
# #操作数据
# names = json.dumps(name_list)
# print(name) #['zs', 'str']
# 序列化 +存储,dump
# 在将对象转换为字符串的同时,指定一个文件的对象 然后把转换后的字符串写入到这个文件里
# # 相当于names = json.dumps(name_list) 和 fp.write(names)
# # 操作文件
# # json.dump(name_list,fp)

参考:

1,JSON实现序列化dump和dumps方法,JSON实现反序列化loads和load方法

2,关于Pickle反序列化总结

举报

相关推荐

0 条评论