您好我尝试了以下示例(我不在全局中有im
)并发现程序实际运行并输出10.
Python是动态作用域吗?
def useGlobal():
def inSide():
print 'inside',
print b
b = 5
print im
inSide()
if __name__ == '__main__':
im = 10
useGlobal()
答案 0 :(得分:9)
if语句不会在Python中创建另一个范围,因此,“im”在模块级别,即全局范围。