在 lambda 语句中使用迭代器

问题描述

为什么 lambda 表达式只输出相同的结果?
我希望获得迭代器的当前值,因此 lambda 表达式将输出从 1 到 4 的数字,但显然不是这种情况。
我认为这个问题可能与 lambda 表达式如何处理迭代器有关,但我还没有找到答案。提前致谢

list = []
for i in range(5):
    list.append(lambda:i)
for a in list:
    print(a())

---OUTPUT---
4
4
4
4

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)