错误消息:TypeError:需要一个类似字节的对象,而不是在Python中使用Pickle收到的“ str”

时间:2019-04-30 20:37:07

标签: python pickle

我正在尝试使用pickle将列表从文本文件加载回程序中:

    f = open("usernames.txt", "r")
    usernames = pickle.load(f)
    f.seek(0)
    f.truncate(0)
    f.close()

但是,当我运行代码时,会出现此错误消息:

    TypeError: a bytes-like object is required, not 'str'

如何解决此错误?

1 个答案:

答案 0 :(得分:2)

您需要以二进制模式打开文件,以便从文件中读取会生成字节字符串,而不是Unicode字符串。

with open("usernames.txt", "rb") as f:
    usernames = pickle.load(f)