Подтвердить что ты не робот

Как добавить несколько значений в ключ словаря в python?

Я хочу добавить несколько значений для конкретного ключа в словаре Python. Как я могу это сделать?

a = {}
a["abc"] = 1
a["abc"] = 2

Это заменит значение ["abc"] от 1 до 2.

Вместо этого я хочу, чтобы ["abc"] имел несколько значений (как 1, так и 2).

4b9b3361

Ответ 1

Сделайте значение списка, например.

a["abc"] = [1, 2, "bob"]

UPDATE:

Существует несколько способов добавить значения к ключу и создать список, если он еще не существует. Я покажу один такой метод небольшими шагами.

key = "somekey"
a.setdefault(key, [])
a[key].append(1)

Результаты:

>>> a
{'somekey': [1]}

Далее, попробуйте:

key = "somekey"
a.setdefault(key, [])
a[key].append(2)

Результаты:

>>> a
{'somekey': [1, 2]}

Магия setdefault заключается в том, что она инициализирует значение для этого ключа, если этот ключ не определен, иначе он ничего не делает. Теперь, отметив, что setdefault возвращает ключ, вы можете объединить их в одну строку:

a.setdefault("somekey",[]).append("bob")

Результаты:

>>> a
{'somekey': [1, 2, 'bob']}

Вы должны посмотреть методы dict, в частности метод get(), и сделать некоторые эксперименты, чтобы получить удовольствие от этого.

Ответ 2

Как насчет

a["abc"] = [1, 2]

Это приведет к:

>>> a
{'abc': [1, 2]}

Это то, что вы искали?