关于pickle的问题
来源:2-7 如何实现用户的历史记录功能(最多n条)
MoleT
2017-01-21
import pickle
q=list(range(10))
pickle.dump(q,open('history','wb+'))
q2 = pickle.load(open('history'))
print(q2)
这里如果不加wb+权限会出现:
TypeError: write() argument must be str, not bytes
这里是pickle默认二进制方式存储
以wb+权限运行的话,出现
UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 0: illegal multibyte sequence
的错误。不知道为什么。。
写回答
2回答
-
程序员硕
2017-01-21
读的时候依然用b打开
00 -
盛年不再有
2017-12-22
# _*_ coding:utf-8 _*_
import pickle
q=list(range(10))
pickle.dump(q,open('history','wb+'))
q2 = pickle.load(open('history','rb'))
print(q2)
00
相似问题
关于对象大小的问题
回答 1
3-2 ASCII 问题
回答 3