关于python中的__dict__和global声明的关系
我这里有个例子,搞不清楚怎么回事
class TestCaseBase:
#global a
a = 1
def func_1(self):
a = 1
print a
print TestCaseBase.__dict__
打印出来的内容是:
{'a': 1, '__module__': '__main__', 'func_1': <function func_1 at 0x00E87170>, '__doc__': None}
而
class TestCaseBase:
global a
a = 1
def func_1(self):
a = 1
print a
print TestCaseBase.__dict__
打印出来的内容却是:
{'__module__': '__main__', 'func_1': <function func_1 at 0x00D86170>, '__doc__': None}
为什么在a被声明成global的时候在类的__dict__属性中没有呢?
[解决办法]