先看一段代码:
>>> x = 10
>>> [x for x in range(3)]
[0, 1, 2]
>>> x
2
从这段代码,我们可以知道:for 循环中用于循环主体的变量会影响上下文的局部变量。
所以,类似下面这样的代码就会有问题:
for x in foo:
# ...
bar = [ x for x in foobar]
n = x['abc'] # error
# ...
先看一段代码:
>>> x = 10
>>> [x for x in range(3)]
[0, 1, 2]
>>> x
2
从这段代码,我们可以知道:for 循环中用于循环主体的变量会影响上下文的局部变量。
所以,类似下面这样的代码就会有问题:
for x in foo:
# ...
bar = [ x for x in foobar]
n = x['abc'] # error
# ...
Comments