0 added
0 removed
Original
2026-01-01
Modified
2026-02-26
1
<p>Как и другие встроенные коллекции, словари поддерживаются языком и имеют собственный синтаксис для описания литералов. В этом уроке мы изучим этот синтаксис подробнее.</p>
1
<p>Как и другие встроенные коллекции, словари поддерживаются языком и имеют собственный синтаксис для описания литералов. В этом уроке мы изучим этот синтаксис подробнее.</p>
2
<p><strong>Литерал словаря</strong>записывается в фигурных скобках. Пары "ключ-значение" разделяются запятыми, а ключ отделяется от значения двоеточием:</p>
2
<p><strong>Литерал словаря</strong>записывается в фигурных скобках. Пары "ключ-значение" разделяются запятыми, а ключ отделяется от значения двоеточием:</p>
3
<p>В этом примере есть и ключи-строки, и ключи-числа, и вложенные словари. И конечно же, здесь есть переменные, которые могут выступать в роли значений и ключей:</p>
3
<p>В этом примере есть и ключи-строки, и ключи-числа, и вложенные словари. И конечно же, здесь есть переменные, которые могут выступать в роли значений и ключей:</p>
4
<h2>Доступ к элементам по ключу</h2>
4
<h2>Доступ к элементам по ключу</h2>
5
<p>Выше мы объявили словарь dictionary. Запросить у него значение по ключу можно так:</p>
5
<p>Выше мы объявили словарь dictionary. Запросить у него значение по ключу можно так:</p>
6
<p>Ключа "BANG" в dictionary нет, поэтому выбросилось исключение KeyError - аналог IndexError для списков.</p>
6
<p>Ключа "BANG" в dictionary нет, поэтому выбросилось исключение KeyError - аналог IndexError для списков.</p>
7
<p>Проверить наличие ключа в словаре можно с помощью привычного оператора in:</p>
7
<p>Проверить наличие ключа в словаре можно с помощью привычного оператора in:</p>
8
<p>Если вы захотите получить значение по ключу, которого может и не быть, можно сделать это так:</p>
8
<p>Если вы захотите получить значение по ключу, которого может и не быть, можно сделать это так:</p>
9
<p>Подобный безопасный запрос элементов нужен довольно часто. Поэтому объект словаря имеет для этого специальный метод .get:</p>
9
<p>Подобный безопасный запрос элементов нужен довольно часто. Поэтому объект словаря имеет для этого специальный метод .get:</p>
10
<p>Третий вызов метода показывает, как можно явно задать значение по умолчанию. Если его не указывать, метод вернет None при отсутствии значения по указанному ключу.</p>
10
<p>Третий вызов метода показывает, как можно явно задать значение по умолчанию. Если его не указывать, метод вернет None при отсутствии значения по указанному ключу.</p>
11
<h2>keys, values и items</h2>
11
<h2>keys, values и items</h2>
12
<p>Если попробовать проитерировать словарь, то мы получим перечень ключей:</p>
12
<p>Если попробовать проитерировать словарь, то мы получим перечень ключей:</p>
13
<p>Этого же результата можно добиться и более явно. Для этого нужно вызвать метод .keys():</p>
13
<p>Этого же результата можно добиться и более явно. Для этого нужно вызвать метод .keys():</p>
14
<p>Чтобы получить значения, нужно вызвать метод .values():</p>
14
<p>Чтобы получить значения, нужно вызвать метод .values():</p>
15
<p>Чтобы получить одновременно и ключи, и соответствующие значения, можно вызвать метод .items():</p>
15
<p>Чтобы получить одновременно и ключи, и соответствующие значения, можно вызвать метод .items():</p>
16
16