указываете связанный с ним уникальный ключ. Таким ключом в основном служит
строка, но он может быть объектом одного из неизменяемых типов: булевой пере-
менной, целым числом, числом с плавающей точкой, кортежем, строкой и другими
объектами, которые вы увидите далее. Словари можно изменять, что означает, что
вы можете добавить, удалить и изменить их элементы, которые имеют вид «ключ —
значение».
84
Глава 3. Наполнение Python: списки, кортежи, словари и множества
Если вы работали с другими языками программирования, которые поддержи-
вают только массивы и списки, то полюбите словари.
В других языках программирования словари могут называться ассоциативными массивами,
хешами или хеш-таблицей. В Python словарь также называется dict для экономии места.
Создание словаря с помощью {}
Чтобы создать словарь, вам нужно обернуть в фигурные скобки ({}) разделенные
запятыми пары ключ : значение. Самым простым словарем является пустой словарь,
не содержащий ни ключей, ни значений:
>>> empty_dict = {}
>>> empty_dict
{}
Создадим небольшой словарь, включающий цитаты из «Словаря сатаны»
Амброза Бирса:
>>> bierce = {
... "day": "A period of twenty-four hours, mostly misspent",
... "positive": "Mistaken at the top of one's voice",
... "misfortune": "The kind of fortune that never misses",
... }
>>>
Ввод имени словаря в интерактивный интерпретатор выведет все его ключи
и значения:
>>> bierce
{'misfortune': 'The kind of fortune that never misses',
'positive': "Mistaken at the top of one's voice",
'day': 'A period of twenty-four hours, mostly misspent'}
В Python допускается наличие запятой после последнего элемента списка, кортежа или
словаря. Вам также не обязательно использовать выделение пробелами, как я это сделал
в предыдущем примере, когда вы вводите ключи и значения внутри фигурных скобок. Это
лишь улучшает читабельность.
Преобразование с помощью функции dict()
Вы можете использовать функцию dict(), чтобы преобразовывать последователь-
ности из двух значений в словари. (Вы иногда можете столкнуться с последова-
тельностями «ключ — значение» вида «Стронций, 90, углерод, 14» или «Vikings, 20,
Packers, 7».) Первый элемент каждой последовательности применяется как ключ,
а второй — как значение.
Словари
85
Для начала рассмотрим небольшой пример, использующий lol (список, содер-
жащий списки, которые состоят из двух элементов):
>>> lol = [ ['a', 'b'], ['c', 'd'], ['e', 'f'] ]
>>> dict(lol)