【发布时间】:2016-04-23 00:09:09
【问题描述】:
我在 Python 3.5.1 中尝试了以下代码:
>>> f = {x: (lambda y: x) for x in range(10)}
>>> f[5](3)
9
很明显这应该返回5。我不明白其他价值从何而来,我也找不到任何东西。
似乎它与引用有关 - 它总是返回 f[9] 的答案,这是分配的最后一个函数。
这里有什么错误,应该怎么做才能正常工作?
【问题讨论】:
标签: python dictionary lambda