Странное поведение: лямбда Внутреннее понимание списка

В Python 2.6:

[x() for x in [lambda: m for m in [1,2,3]]]

приводит к:

[3, 3, 3]

Я бы ожидал, что вывод будет [1, 2 3]. Я получаю точную те же проблему даже с подходом понимания не списка. И даже после того, как я копирую m в другую переменную.

Что я скучаю?

18
задан Tom Zych 9 September 2011 в 23:45
поделиться