gpt4 book ai didi

windows-7 - pickle.load 中的 UnicodeDecodeError

转载 作者:行者123 更新时间:2023-12-01 00:41:33 25 4
gpt4 key购买 nike

我在使用 pickle 加载 pkl 文件时遇到了一些问题。我使用的是 Windows 7 和 Python 3.5.1 64 位。 pkl 文件是从 here 下载的.

这是我的代码:

import pickle

# Load model weights and metadata
weightFile = open('vgg16.pkl', 'rb')
d = pickle.load(weightFile)

当我运行它时,我得到了输出
"C:\Program Files\Python35\python.exe" C:/work/lasagne/tutorial/lasagne-tutorial2.py
Traceback (most recent call last):
File "C:/work/lasagne/tutorial/lasagne-tutorial2.py", line 5, in <module>
d = pickle.load(weightFile)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xbc in position 1: ordinal not in range(128)

Process finished with exit code 1

这个错误信息是什么意思?它说有一个 acsii 编解码器无法解码的字节,但 pkl 文件不应该是二进制文件(因此不包含 ascii 字符)?

加载文件时我做错了什么吗?我该怎么做才能修复错误?

最佳答案

this answer中找到了解决方案. pickle 文件可能是用 Python 2 编码的,并提供 pickle.load带有可选参数 encoding='latin1'解决了这个问题。

有效的代码如下所示:

import pickle

# Load model weights and metadata
weightFile = open('vgg16.pkl', 'rb')
d = pickle.load(weightFile, encoding='latin1')

关于windows-7 - pickle.load 中的 UnicodeDecodeError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37350578/

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