Loading

python lambda函数参数传递之坑

看这个例子:

def my_print(val):
    print val

lst = [1, 2, 3]
func_list = []

for x in lst:
    func_list.append(lambda: my_print(x))

for func in func_list:
    func()
"""
3
3
3
"""
    
func_list = []
for x in lst:
    func_list.append(lambda aaa=x: my_print(aaa))

for func in func_list:
    func()
"""
1
2
3
"""

lambda出现时是函数声明,:右侧并不会管参数到底是哪个,所以要在左侧捕捉后传入。

https://blog.csdn.net/u010949971/article/details/70045537

posted @ 2021-11-02 23:41  dylanchu  阅读(210)  评论(0编辑  收藏  举报