Создает ли массив, заполненный словарями, дублирующие словари в Python? - PullRequest
2 голосов
/ 03 марта 2020

Я пытаюсь создать list, заполненный dictionary, чтобы я мог обновить каждый связанный словарь для создания и adjacency list для графика. Однако, как показано ниже, всякий раз, когда я пытаюсь обновить словарь, каждый словарь в массиве обновляется, когда я хочу, чтобы обновлялся только этот конкретный c словарь в этом связанном индексе. Создает ли словарь внутри list дублирующие словари? Как я могу обойти эту проблему?

>>> a = [{}] * 4
>>> a[0].update({1:4})
>>> a
[{1: 4}, {1: 4}, {1: 4}, {1: 4}]

1 Ответ

2 голосов
/ 03 марта 2020
[{} for _ in range(4)]

создаст копии вместо ссылок

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...