Python добавить новый элемент в словарь [дубликат]
этот вопрос уже есть ответ здесь:
- добавить новые ключи в словарь? 19 ответов
Я хочу добавить элемент в существующий словарь в python. Например, это мой словарь:
default_data = {
'item1': 1,
'item2': 2,
}
Я хочу, чтобы добавить новый элемент, такой, что:
default_data = default_data + {'item3':3}
как этого добиться?
4 ответов
default_data['item3'] = 3
легко, как py.
другое возможное решение:
default_data.update({'item3': 3})
, который хорош, если вы хотите вставить несколько элементов одновременно.
Это может быть так же просто, как:
default_data['item3'] = 3
As Криса ответа говорит, Вы можете использовать обновление чтобы добавить более одного элемента. Пример:
default_data.update({'item4': 4, 'item5': 5})
пожалуйста, смотрите документы о словари как структуры данных и словари, как встроенные типы.
мне пришло в голову, что вы, возможно, на самом деле спрашиваете, как реализовать +
оператор для словарей, кажется, работает следующее:
>>> class Dict(dict):
... def __add__(self, other):
... copy = self.copy()
... copy.update(other)
... return copy
... def __radd__(self, other):
... copy = other.copy()
... copy.update(self)
... return copy
...
>>> default_data = Dict({'item1': 1, 'item2': 2})
>>> default_data + {'item3': 3}
{'item2': 2, 'item3': 3, 'item1': 1}
>>> {'test1': 1} + Dict(test2=2)
{'test1': 1, 'test2': 2}
обратите внимание, что это более накладные расходы, чем использование dict[key] = value
или dict.update()
, поэтому я бы рекомендовал не использовать это решение, если вы не собираетесь создавать новый словарь в любом случае.