我有以下模块:
文件a.py
class Foo(object):
x = 5
if __name__ == '__main__':
print Foo.x #5
Foo.x = 7
print Foo.x #7
b = __import__('b')
print b.Bar.x #5
文件b.py
from a import Foo
class Bar(Foo):
pass
文件c.py
if __name__ == '__main__':
import a
print a.Foo.x #5
a.Foo.x = 7
print a.Foo.x #7
b = __import__('b')
print b.Bar.x #7
如果我运行 a.py,我得到 5,7,5,如果我运行 b.py,我得到 5,7,7。我不确定正确的答案应该是什么,但我希望两者保持一致。