理解`from ... import ...`行为

时间:2017-06-19 19:14:31

标签: python python-3.x

我遇到了有关from ... import ...语法的有趣行为。似乎在使用此语法时,标识符将作为新标识符导入,而不是引用。

我已经编写了很长一段时间的Python并且总是避免使用这种语法,所以这对我来说是非常意外的。相反,我希望它的工作方式与import ...相同。

以下是一个例子:

a.py

x = 0

b.py

from b import x

def f():
    print(x)

main.py

import a
import b

a.f()
b.x = 1
a.f()

结果是:

0
0

而不是

0
1

我的预期。

from ... import ...创建一个新变量,或者它是否引用变量?

我搜索了文档,用Google搜索,搜索StackOverflow,但似乎并不是这个问题的一个非常明确的答案。任何链接(尤其是Python文档)都将受到赞赏。

0 个答案:

没有答案