Вот простой код, который выполняет операции со списками:
>>> a = [0] * 5
>>> a
[0, 0, 0, 0, 0]
>>> a[0] = 5
>>> a
[5, 0, 0, 0, 0]
>>>
На данный момент, ничего ненормального.
Теперь я пытаюсь сделать то же самое со списком словарей вместосписок целых чисел:
>>> a = [{}] * 5
>>> a
[{}, {}, {}, {}, {}]
>>> a[0]['b'] = 4
>>> a
[{'b': 4}, {'b': 4}, {'b': 4}, {'b': 4}, {'b': 4}]
>>>
Я не понимаю, почему все элементы моего списка изменены ...
Может кто-нибудь сказать мне, почему?А также предоставить обходной путь?