Python 导入到_init__文件中
我正在用Python构建一个小项目。我的结构如下:Python 导入到_init__文件中,python,python-3.x,path,filepath,project-structure,Python,Python 3.x,Path,Filepath,Project Structure,我正在用Python构建一个小项目。我的结构如下: src - module_a - __init__.py - helper.py - module_b - __init__.py - utils.py - __init__.py - main_script.py 这是有效的: # src __init__ file contents from src import module_a, module_b # module_a
src
- module_a
- __init__.py
- helper.py
- module_b
- __init__.py
- utils.py
- __init__.py
- main_script.py
这是有效的:
# src __init__ file contents
from src import module_a, module_b
# module_a __init__ file contents
from module_a.helper import func1
# module_b __init__ file contents
from module_b.utils import func2
这不起作用
# src __init__ file contents
from src import module_a, module_b
# module_a __init__ file contents
from src.module_a.helper import func1
# module_b __init__ file contents
from src.module_b.utils import func2
这会引发一个错误
没有名为src的模块。这应该管用,对吧?有人能详细解释一下为什么这不起作用吗?在第二种情况下,您没有导入src,因此没有一个src模块可以从中访问内容<代码>从src导入模块a,模块b
初始化模块a和模块b,并使用从src
部分描述在何处找到它们。因此,模块a和模块b是自由浮动的对象,完全不受src的约束。如果您想让它们成为src的属性,只需使用import src
,尽管您的工作案例似乎运行良好。此处有更多详细信息:谢谢您的回答,但如果您查看此处,您将看到他们正在执行same@RaymondHettinger这里有什么建议吗?你看了吗?