Найти тему
Ты в АйТи

Словари

Словари хранят элементы не по относительным позициям, а по ключам, и являются не последовательностями, а отображениями.

Это, как и списки изменяемый тип, который способен увеличиваться или уменьшаться по требованию.

Словари указываются в фигурных скобках и состоят из пар "ключ: значение"

Рис1. пример создания словаря и обращения к значениям.
Рис1. пример создания словаря и обращения к значениям.

Элементы в словарь можно добавлять и таким образом:

Рис2. Добавление элементов в словарь.
Рис2. Добавление элементов в словарь.

Словари могут использоваться для замены операций поиска, зачастую способ по ключу в словаре это самая быстрая реализация поиска в Python.

Еще пара способов создания словаря:

Рис3. Способы создания словаря
Рис3. Способы создания словаря

В словарь в качестве значений могут быть вложены другие словари и списки...

Рис 4. Усложняем значения словаря
Рис 4. Усложняем значения словаря

А как подстраховаться от обращения к несуществующим ключам... вдруг ключ может быть в словари, а может и не быть... Как выполнить проверку?
Есть ряд способов. Например, с помощью оператора проверки членства в словаре:

Рис 5. Проверка членства в словаре.
Рис 5. Проверка членства в словаре.

Есть и другие варианты:

Метод словаря get(). Условный индекс со стандартным вариантом.

Рис 6. Метод get() для защиты от обращения к отсутствующему ключу
Рис 6. Метод get() для защиты от обращения к отсутствующему ключу

Использование выражения if/else

Рис 7. Использование выражения if/else
Рис 7. Использование выражения if/else

Кроме этого можно использовать оператор try для перехвата исключения.

Как уже упоминалось словарь это отображение и он не имеет какого-то порядка справа налево и ключи после их ввода могут отобразится не в том порядке в котором их вводили, но чтобы навести порядок, можно использовать встроенную функцию sorted():

Рис. 8 Сортировка и вывод ключей в словаре.
Рис. 8 Сортировка и вывод ключей в словаре.

Использование:

Словари удобны. когда необходимо описать свойства какого-нибудь объекта, сопоставив пары "название свойства : значение свойства"

Если статья была вам хоть сколько-нибудь интересна ставим лайк и подписываемся на канал, чтобы не пропустить новые материалы. Спасибо за прочтение.
Помогите автору канала одним из этих способов :) :
Донаты (переводы) с любых карт и yoomoney -
https://yoomoney.ru/fundraise/QnZacAJpY9g.230208
Донаты на карту Сбера - 2202 2007 6729 1543
Донаты на Тинькофф - 5536 9137 9511 4657
Донаты на Открытие - 5586 2000 6614 6835
Криптокошельки:
1. Ethereum - 0x73670880Af17F42E6a641f5936E2f3Bc5a4db257
2. Bitcoin - bc1qywt6l80metclksvdzjt370r28zg9gxg5262aum
3. LiteCoin - ltc1qrwedpjt4evqhl42w2z32kks6xwysqvk3g27uqj
4. Zcash - t1YfZNFJ5Q1BQLCbC6Qo3bcueLJ53QLo4Mx