首页 > 解决方案 > UnicodeDecodeError:“ascii”编解码器无法解码位置 6 中的字节 0xf2:序数不在范围内(128)

问题描述

我正在尝试使用文件 .pkl。

这是我的代码

import pickle
with open('C:\\Users\\Utilizador\\Desktop\\teste\\teste.pkl', 'rb') as f:
    data = pickle.load(f)

它给了我以下错误:

  File "C:/Users/Utilizador/Desktop/teste/untitled0.py", line 4, in <module>
    data = pickle.load(f)    
UnicodeDecodeError: 'ascii' codec can't decode byte 0xf2 in position 6: ordinal not in range(128)

提前致谢

标签: pythonpython-requestspicklespyderpython-3.7

解决方案


在 python 3 中,您可以基于 https://rebeccabilbro.github.io/convert-py2-pickles-to-py3/使用以下内容:

with open("old_pickle.pkl", 'rb') as f:
    loaded = pickle.load(f, encoding="latin1") 

或者

with open("old_pickle.pkl", 'rb') as f:
    loaded = pickle.load(f, encoding="bytes")

推荐阅读