我有一个叫做“包”的 Python 包。在里面我有空的__init__.py
和两个模块。一个被调用m1.py
并且只包含一行:
x = 3
另一个被调用m2.py
并包含这一行:
x = 5
现在我尝试使用这些模块。首先我做这样的事情:
from package.m1 import x
print package.m1.x
当然它不起作用 - 我收到这样的错误:
NameError: name 'package' is not defined
我明白为什么它不起作用。但后来我做了这样的事情:
from package.m1 import x
import package.m2
print package.m1.x
现在它确实起作用了。为什么?如何?我没有导入 package.m1!