如何在pickle文件中使用importlib.resources?

问题描述 投票:0回答:1

我正试图用以下方法加载一个pickle文件 importlib.resources但我得到了以下错误。UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte

引起错误的位是:

with importlib.resources.open_text("directory_with_pickle_file", "pickle_file.pkl") as f:
   data = pickle.load(f)

我确定文件(pickle_file.pkl)创建了 pickle.dump.我到底做错了什么?

python-3.x pickle python-importlib
1个回答
0
投票

通过大量的试验和错误,我找出了以下问题 importlib.resources 拥有 read_binary 函数,它可以用来读取腌制文件,就像这样。

text = importlib.resources.read_binary("directory_with_pickle_file", "pickle_file.pkl")
data = pickle.loads(text)

这里: data 是腌制的对象。

© www.soinside.com 2019 - 2024. All rights reserved.