Python: pickle的使用(dumps, dump, load)

在深度学习中,其中很重要的一步就是进行数据的准备,当然有很多数据的保存方式,下面介绍一种读写使用都非常方便的一中方式,使用pickle来保存数据

import pickle 
d = dict(name='Felaim', age=26, score=90)
pickle.dumps(d)
b'\x80\x03}q\x00(X\x04\x00\x00\x00nameq\x01X\x06\x00\x00\x00Felaimq\x02X\x03\x00\x00\x00ageq\x03K\x1aX\x05\x00\x00\x00scoreq\x04KZu.'

pickle.dumps()方法把任意对象序列化成一个bytes,然后,就可以把这个bytes写入文件。或者用另一个方法pickle.dump()直接把对象序列化后写入一个file-like Object:

f = open('dump.txt', 'wb')
pickle.dump(d, f)
f.close()

保存成txt类型,当然打开是无法正确显示的
在这里插入图片描述那我们要如何使用保存的数据呢?

f2 = open('dump.txt', 'rb')
d2 = pickle.load(f2)
f2.close()
print(d)
{'name': 'Felaim', 'age': 26, 'score': 90}

我们做的其实就是把变量从内存中变成可以存储或传输的方式,这个过程其实就是序列化,也就是对应着dump和dumps的操作,反之,把保存的文件读取出来,也就是从磁盘到内存中,这种过程就是反序列化的过程,对应着上述load的过程。

你可能感兴趣的:(python,数据处理)