Форум сайта python.su
Добрый день.
Нужен словарь, в котором бы хранились списки учёных. Что-то вроде: ключ- “Chemics”, значение ; ключ - “Physics”, значение - ; Собственно, возникает 2 вопроса:
1. Как добавить элемент к уже существующему значению? например, чтобы по ключу “Physics” значение стало ? А в идеале - сделать так, чтобы при добавлении, если такой ключ уже есть, то добавлялось в список значений, а если нет - создавался новый ключ.
2. Как потом обратиться к элементу списка-значения? slovar прокатит?
Заранее спасибо.
Офлайн
1:
>>> d1 = {}
>>> d1.setdefault('Physics', []).append('Newton')
>>> d1
{'Physics': ['Newton']}
>>> d1.setdefault('Physics', []).append('Einshtein')
>>> d1
{'Physics': ['Newton', 'Einshtein']}
>>>
Отредактировано (Ноя. 10, 2010 13:58:29)
Офлайн
Спасибо. Я покопался и оказалось всё совсем просто:
slovar["Physics"]+=["Einstein"]
Офлайн
Другой вариант (IMHO более наглядный):
from collections import defaultdict
scientists = defaultdict(list)
scientists['math']
>>> []
scientists['math'].append('Gauss')
Офлайн