以下のように、最後の r が出力されないのはなぜ[{'k': 1}, {'k': 2}]
ですか?
l = [1, 2]
d = {}
r = []
for el in l:
d['k'] = el
print '> ' + str(d)
r.append(d)
print r
出力:
> {'k': 1}
> {'k': 2}
[{'k': 2}, {'k': 2}]
追加操作の前に希望どおりに出力されますが、辞書がリストに追加された後、最後の要素を繰り返し追加するのはなぜですか?