gpt4 book ai didi

python - python中的 pickle 错误?

转载 作者:太空狗 更新时间:2023-10-29 17:05:40 24 4
gpt4 key购买 nike

我收到这个错误,我不知道它是什么意思。我该如何解决这个问题?

我的代码看起来是这样的,我以前用过它并且有效:

parentdir = os.getcwd()
dirlist = os.listdir(parentdir)

for dir in dirlist:
if not dir == "pubs_edits": continue
if os.path.isdir(os.path.join(parentdir, dir)):
os.chdir(os.path.join(parentdir, dir))
file_list = os.listdir(os.path.join(parentdir, dir))
for f in file_list:
in1 = open(f, 'r')
dict2 = pickle.load(in1)

这是错误信息:

    File "/home/md202/pmid_editor.py", line 18, in <module>
dict2 = pickle.load(in1)
File "/usr/lib/python2.5/pickle.py", line 1370, in load
return Unpickler(file).load()
File "/usr/lib/python2.5/pickle.py", line 858, in load
dispatch[key](self)
KeyError: '\x00'

最佳答案

当我试图解开(使用 pickle.loads)我通过 django 存储在数据库中的字符串表示形式时,我就发生了这个确切的错误。 Django 更改了我的字符串的字符表示,因此 pickle.loads(mystring) 向我抛出该错误。当我在其中添加显式字符串转换时,一切正常:pickle.loads( str(mystring) )

编辑:查看原帖的评论,我认为这与提到的 unicode 字符串问题有关。我将一个普通字符串放入数据库,django 返回一个产生此错误的 unicode 字符串。

关于python - python中的 pickle 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6331901/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com