在python中存储数据时,调用open函数写入操作再重新读取时可能会出现类型不匹配的情况,因为读取的都是字符串形式,要做类型转换。
若想存储python的原生对象,但又无法信任数据来源,则可以考虑pickle模块。
pickle用来保存和加载python数据对象的(是python的专有格式文件,其他语言无法识别),数据用dump保存到文件,用load加载。
demo
import pickle
a = {'a':1, 'b':2, 'c':3, 'e':4, 'f':5, 'g':6}
#用上下文以二进制的方式打开一个文件,
#并把a的的数据用dump保存到文件里面
with open('dumpfile.pk', 'wb') as f:
pickle.dump(a, f)
#直接以二进制读取方式打开保存数据的文件用load加载
with open('dumpfile.pk', 'rb') as a:
data = pickle.load(a)
print (data) #打印保存的数据
参考:
1)https://blog.csdn.net/qq_27623521/article/details/77852734
2)https://blog.csdn.net/u014291497/article/details/51059554