gpt4 book ai didi

python - 导入错误 : No module named "utils" when using pickle. 加载

转载 作者:行者123 更新时间:2023-12-04 09:21:16 29 4
gpt4 key购买 nike

我首先使用 pickle.dump 将一些东西转储到 pickle 文件中。在 utils.load_data 中,我的项目层次结构如下所示

project1
-utils
-__init__.py
-load_data.py
-data
(other folder...)

然后它将一个 pickle 文件输出到一个数据文件夹中。然后我将 .pickle 文件移动到另一个项目,项目层次结构是

project2
-data
-main.py

当我在这个main.py中运行一个pickle.load()操作时,它提示错误如标题。但是,如果我将 main.py 移回 project1 文件夹,则错误消失。所以问题一定来自文件。

我的问题是,为什么 pickle 会尝试从它出生的地方导入包?任何人都可以为此分享一个很好的解释吗?我很困惑。

最佳答案

默认情况下,unpickling 将导入它在 pickle 数据中找到的任何类。这意味着如果你已经 pickle 了一个自定义类并且你正在某个地方取消它,pickle 将尝试导入模块(在这种情况下为 utils)。所以你需要在 project2 文件夹中有 utils 模块

关注this了解更多信息

关于python - 导入错误 : No module named "utils" when using pickle. 加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63101601/

29 4 0