问题描述
我有一个这样的Python目录,并且我正在main_script.py
上运行src
。
每当我尝试将类从class_files
导入main_script.py
时,都会出现错误。我该怎么做呢?
- src/
- jobs/
- _init_.py
- my_team/
- _init_.py
- my_project/
- _init_.py
- main_script.py
- class_files/
- class1.py
- class2.py
- class3.py
- __init__.py
我已经尝试进行绝对导入,但这也没有用。
from jobs.my_team.my_project.class_files import *
解决方法
jobs.my_team.my_project.class_files
仅在每个组成部分都是Python软件包的情况下才有效。例如,
src/
jobs/
__init__.py
my_team/
__init__.py
my_project/
__init__.py
main_script.py
class_files/
class1.py
class2.py
class3.py
__init__.py
您的导入树必须由Python包组成。如果其中没有__init__.py
,则该目录不是Python软件包。就这么简单。
此外,要使其正常工作,您的src/
目录需要位于$PYTHONPATH
环境变量中,或者在运行时添加到sys.path
。