Python:保存对象并使用pickle。使用pickle.dump时出错

时间:2010-12-25 12:50:38

标签: python object save pickle

你好,我有一个错误,我没有理由:

>>> class Fruits:pass
...
>>> banana = Fruits()
>>> banana.color = 'yellow'
>>> banana.value = 30
>>> import pickle
>>> filehandler = open("Fruits.obj",'w')
>>> pickle.dump(banana,filehandler)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python31\lib\pickle.py", line 1354, in dump
Pickler(file, protocol, fix_imports=fix_imports).dump(obj)
TypeError: must be str, not bytes
>>>

我不知道如何解决这个错误,因为我不明白。 非常感谢你。

1 个答案:

答案 0 :(得分:1)

您必须以二进制模式打开文件处理程序,使用 wb 而不是 w

filehandler = open(b"fruits.obj","wb")