В python 2.6:
[x() for x in [lambda: m for m in [1,2,3]]]
приводит к:
[3, 3, 3]
Я ожидаю, что выход будет [1, 2, 3]. Я получаю точно такую же проблему даже при использовании подхода, не учитывающего список. И даже после того, как я копирую m в другую переменную.
Что мне не хватает?