Python 导入错误:没有名为“的模块”;utils“;使用pickle.load时
我首先使用pickle.dump将一些内容转储到pickle文件中。在utils.load_data中,我的项目层次结构如下所示Python 导入错误:没有名为“的模块”;utils“;使用pickle.load时,python,import,pickle,importerror,Python,Import,Pickle,Importerror,我首先使用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
project1
-utils
-__init__.py
-load_data.py
-data
(other folder...)
然后将pickle文件输出到数据文件夹中。然后我将.pickle文件移动到另一个项目,项目层次结构是
project2
-data
-main.py
当我在main.py中运行pickle.load()操作时,它会提示错误作为标题。但是,如果我将main.py移回project1文件夹,则错误将消失。因此,问题必须来自文件
我的问题是,为什么pickle要从它出生的地方导入这个包?有谁能给我一个好的解释吗?我很困惑。默认情况下,取消勾选将导入它在pickle数据中找到的任何类。这意味着如果您已经pickle了一个自定义类,并且要在某个地方取消pickle,pickle将尝试导入该模块(
utils
)。因此,您需要将utils
模块放在project2
文件夹中
如需了解更多信息,请按以下步骤操作如果答案有用,您可以接受。它帮助其他人找到答案。这是我能找到的关于这个话题的最好答案!