我具有以下项目结构:
path_to_dir/
│
├── a_notebook.ipynb
└── testCases_v2.py
在.py文件中,我定义了几个函数。
我正试图将它们导入笔记本中,如下所示:
from testCases_v2 import layer_sizes_test_case
但是,我得到了:
ImportError:无法从“ testCases_v2”(/ path_to_dir / testCases_v2.py)导入名称“ layer_sizes_test_case”
我什至尝试将目录添加到系统路径:
import os
import sys
module_path = os.path.abspath(os.path.join('path_to_dir'))
if module_path not in sys.path:
sys.path.append(module_path)
但是问题仍然存在。
如何解决? (而且,是的,我检查了要导入的函数的名称是否拼写正确)
答案 0 :(得分:0)
假设你有这个:
path_to_dir/
│
├── a_notebook.ipynb
└── tests
|
└── testCases_v2.py
在 testCases_v2 中,您有一个同名的类。
您必须手动导入希望 Jupyter 导入的模块 在 sys.path 中的帐户在这种情况下,模块是 'tests' 和路径 你必须包括'path_to_dir'
import sys
sys.path.insert(0, 'path/to/dir')
在 py 文件所在的模块中,添加一个空的 __init__.py
path_to_dir/
│
├── a_notebook.ipynb
└── tests
|
├──testCases_v2.py
└── __init__.py
您现在应该可以通过执行以下操作来导入它:
from tests.testCases_v2 import testCases_v2
python doc about modules 可能会派上用场