在python的匿名函数的测试中发现一个问题:
def m():
return [lambda x:x*i for i in range(4)]
a = m()
for a in m():
print(a(1))
运行的结果我本以为会是
0
1
2
3
可是答案却是四个3,原因尚未了解。
在python的匿名函数的测试中发现一个问题:
def m():
return [lambda x:x*i for i in range(4)]
a = m()
for a in m():
print(a(1))
运行的结果我本以为会是
0
1
2
3
可是答案却是四个3,原因尚未了解。