小编Lym*_*urd的帖子

如何使用列表推导生成不同lambda函数的列表?

这个问题是从涉及Tkinter按钮的回调函数的原始应用程序中提炼出来的.这是说明行为的一行.

lambdas = [lambda: i for i in range(3)]

如果你然后尝试调用生成的lambda函数: lambdas[0](),lambdas[1]()并且lambdas[2]()都返回2.

期望的行为是lambdas[0]()返回0,lambdas[1]()返回1,lambdas[2])()返回2.

我看到索引变量是通过引用解释的.问题是如何改写以使其按价值处理.

python lambda list-comprehension python-2.7

4
推荐指数
2
解决办法
886
查看次数

标签 统计

lambda ×1

list-comprehension ×1

python ×1

python-2.7 ×1