我有一个这样的布局
pylib/
apps/
main.py
libs/
MyClass.py
__init__.py
其中MyClass.py
是
class MyClass:
pass
if __name__ == "__name__":
obj = MyClass()
而且在{
from pylib.libs.MyClass import MyClass
obj = MyClass()
得到
ModuleNotFoundError:没有名为“pylib”的模块
from ..libs.MyClass import MyClass
obj = MyClass()
得到
ImportError:尝试在没有已知父包的情况下进行相对导入
from libs.MyClass import MyClass
obj = MyClass()
得到
ModuleNotFoundError:没有名为“libs”的模块
如果有人知道怎么修理,我会很高兴的
问题是包含
pylib
的文件夹不在路径上。可以通过将包含文件夹添加到PYTHONPATH
环境变量来修复此问题另一种方法是在代码中包含逻辑:
在本例中,
pylib
文件夹位于temp-code
文件夹内,并且该代码在导入类之前运行希望有帮助
参考:https://docs.python.org/3/using/cmdline.html?highlight=pythonpath#envvar-PYTHONPATH
相关问题 更多 >
编程相关推荐