Message403899
Strange behavior is found when lambda is used inside for-loop.
code:(same as attached file)
# begin of CODE
def aa(x):
print("aa")
def bb(x):
print("bb")
namefun = [
("a", aa),
("b", bb),
]
name2fun = {}
for name, fun in namefun:
name2fun[name] = lambda x: fun(x)
# issue happened when calling lambda
name2fun["a"](1)
name2fun["b"](1)
# end of CODE
output:
bb
bb
expected output:
aa
bb |
|
Date |
User |
Action |
Args |
2021-10-14 12:20:21 | vincent7f | set | recipients:
+ vincent7f |
2021-10-14 12:20:21 | vincent7f | set | messageid: <1634214021.97.0.77826806934.issue45469@roundup.psfhosted.org> |
2021-10-14 12:20:21 | vincent7f | link | issue45469 messages |
2021-10-14 12:20:21 | vincent7f | create | |
|