在同一个项目目录中,我有一个文件solution.ipynb,另一个文件名为model.py。在文件solution.ipynb中,我必须导入模块model.py。
当我使用以下代码时,这两个文件都位于同一个目录中:
import import_ipynb
import model
我仍然收到错误: ModuleNotFoundError:没有名为“模型”的模块
请注意:我正在使用VSCode打开和写入.ipynb文件。奇怪的是,当我用朱庇特实验室打开.ipynb文件时,可以毫无问题地导入模块model.py。
我已经尝试过的:(1)安装导入-ipynb并在上面引用它(如代码的第一行所示),(2)在.ipynb所在的目录中添加一个__init__.py文件。
发布于 2020-09-07 21:42:12
正如Ian在他的评论中提到的那样,当您有多个级别的目录时,VSCode设置的PATH变量没有查看您的.ipynb文件所在的文件夹,所以出现了这个问题。它只看最高层。要明确指出文件夹的路径,请在.ipynb开头添加以下代码:
import sys
sys.path.insert(0, ".")
注意:
您可以相应地更改路径,例如,如果您的.py模块位于.ipynb的父文件夹中,则使用"..";如果它位于与.ipynb文件的文件夹平行的另一个文件夹中,则使用“./.ipynb_dir”。
请参阅注释中的更多内容:https://stackoverflow.com/a/42727538/14237798
发布于 2020-05-29 10:38:29
你可以用这个
% run "model.py"
https://stackoverflow.com/questions/59347912
复制相似问题