首先先介绍一种保存字典,列表等基础的Python类型进行保存:
pickle是一个进行序列化的包,这里,直接保存一个具有3个字典,2个列表元素的列表!
with open("Axis.pkl","wb") as file:
list1 = [{"1":1},{"2":2},{"3":3},[1],[2]]
pickle.dump(list1, file, True)
再次写入文件如下:
with open("Axis.pkl", "rb") as file:
list1 = pickle.load(file)
print(list1[0],list1[1],list1[2],list1[3])
dic1 = list1[0]
dic2 = list1[1]
dic3 = list1[2]
list1 = list1[3]
list2 = list1[4]
直接使用上面的方法是保存不了类对象里面的自定义的数据结构的。
可采用如下方式保存,先将对象转成字符串格式再进行保存:
rw = class()
output_hal = open("1.pkl", 'wb')
str = pickle.dumps(rw)
output_hal.write(str)
output_hal.close()
打开方式如下:
rq = class()
with open("1.pkl",'rb') as file:
rq = pickle.loads(file.read())
注意:使用pickle方式进行保存,打开文件需要wb,rb,都是以二进制的方式打开的,不然会出错。