所以我想从一个 python 包中导入一个模块,该包是主脚本所在的子目录。这是目录结构:
maindir \
- main.py
- modules \
- __init__.py
- module.py
我觉得奇怪的是我不能module.py
用一个简单的导入import modules.module
,因为当我尝试调用它返回的函数module.foo()
时。但是,当我这样做时,一切正常,与. 而当位于同一目录下时,一个简单的调用就完全足够了。main.py
NameError: name 'module' is not defined
import modules.module as module
from modules import module
module.py
main.py
import module
module.foo()
现在的问题是,为什么会这样?为什么一个简单的import
语句不足以从包中导入模块而不是脚本所在的目录?还是我做错了什么?非常感谢您的回答,因为我现在很困惑...