Найти - Пользователи
Полная версия: Добавить элемент к значению словаря
Начало » Python для новичков » Добавить элемент к значению словаря
1
nikk
Добрый день.
Нужен словарь, в котором бы хранились списки учёных. Что-то вроде: ключ- “Chemics”, значение ; ключ - “Physics”, значение - ; Собственно, возникает 2 вопроса:

1. Как добавить элемент к уже существующему значению? например, чтобы по ключу “Physics” значение стало ? А в идеале - сделать так, чтобы при добавлении, если такой ключ уже есть, то добавлялось в список значений, а если нет - создавался новый ключ.

2. Как потом обратиться к элементу списка-значения? slovar прокатит?

Заранее спасибо.
pill
1:
>>> d1 = {}
>>> d1.setdefault('Physics', []).append('Newton')
>>> d1
{'Physics': ['Newton']}
>>> d1.setdefault('Physics', []).append('Einshtein')
>>> d1
{'Physics': ['Newton', 'Einshtein']}
>>>
Python cookbook
Section 1.6. Associating Multiple Values with Each Key in a Dictionary
Там подробно расписано.
2:Конечно.
nikk
Спасибо. Я покопался и оказалось всё совсем просто:

slovar["Physics"]+=["Einstein"]
Спокойно прокатывает.
AlexKiriukha
Другой вариант (IMHO более наглядный):

from collections import defaultdict

scientists = defaultdict(list)

scientists['math']
>>> []
scientists['math'].append('Gauss')
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB