我使用以下软件包设置了我的程序:
-base
---init.py
---base_class.py
-test
---init.py
---test.py
当我在from base.base_class import BaseClass
中执行导入语句test.py
时,我在运行时遇到错误
from base.base_class import BaseClass
ImportError: No module named base.base_class
我无法弄清楚为什么它无法导入该模块。
答案 0 :(得分:6)
位于test.py的顶部添加
import sys
sys.path.append("..")
base不是路径上的文件夹...一旦你改变它,它应该工作
或将test.py放在与base相同的文件夹中。或将基地移动到路径上的某个地方
答案 1 :(得分:2)
您需要在从
导入的每个文件夹中都有一个__init__.py
文件
答案 2 :(得分:1)
你必须创建一个名为" __init__.py
"的文件。在python目录,然后" Python"将该目录理解为Python包。
答案 3 :(得分:1)
你可以做三件事:
将init.py
文件添加到每个文件夹
将sys.path.append("Folder")
添加到顶部
或使用imp和do;
import imp
foo = imp.load_source('filename', 'File\Directory\filename.py')
然后foo将是模块的名称,例如foo.method()