python的文件读写都是以字符串形式进行处理的 ,如果我们要存取的类型是整形、浮点型、字典、元组等类型就比较麻烦,这时候我们就可以使用pickle模块来序列化python中的基本数据类型或者是自己定义的类。
pickle模块两个主要方法:
-
dump():dump有倾倒之意,pickle.dump()有两个必要参数,第一个是要序列化的对象,第二个是文件对象。注意,文件对象必须是以’wb’模式打开的。
-
load():load有加载、装载之意,pickle.load()有一个必要参数,为文件对象。该方法返回的是序列化前的数据类型对象。注意,文件对象必须是以’rb’模式打开的。
示例
import pickle
my_list = ['person', '123']
file1 = open('test.txt', 'wb')
pickle.dump(my_list, file1)
file1.close()
file1 = open('test.txt', 'rb')
my_list = pickle.load(file1)
print(my_list, type(my_list))
file1.close()
'''
Output:
['person', '123'] <class 'list'>
'''