Методы словарей (dict) в Python:

Добавление и обновление

dct[key] = value — добавить новую пару или перезаписать существующую.

python
dct = {'a': 1}
dct['b'] = 2 # {'a': 1, 'b': 2}
dct['a'] = 99 # {'a': 99, 'b': 2}
Зачем: самый частый способ записать или обновить значение по ключу.

dct.update(other) — добавить или перезаписать сразу несколько пар из другого словаря или итерируемого объекта пар.

python
dct = {'a': 1}
dct.update({'b': 2, 'c': 3}) # {'a': 1, 'b': 2, 'c': 3}
dct.update([('d', 4)]) # {'a': 1, 'b': 2, 'c': 3, 'd': 4}
dct.update(a=100) # {'a': 100, 'b': 2, 'c': 3, 'd': 4}
Зачем: быстро «склеить» словари или массово обновить значения.

dct.setdefault(key, default=None) — если ключа нет, добавляет его со значением default и возвращает это значение; если есть — возвращает текущее.

python
dct = {'a': 1}
dct.setdefault('b', 2) # 2, dct = {'a': 1, 'b': 2}
dct.setdefault('a', 99) # 1 ← ключ уже есть, значение не меняется
Зачем: задать значение по умолчанию, не перезаписывая существующее.

Удаление и извлечение

dct.pop(key, default=None) — удалить ключ и вернуть его значение; если ключа нет — возвращает default.

python
dct = {'a': 1, 'b': 2}
dct.pop('a') # 1, dct = {'b': 2}
dct.pop('x', 0) # 0 ← ключа нет, ошибки не будет
Важно: без default при отсутствии ключа — ошибка KeyError.

dct.popitem() — удалить и вернуть последнюю добавленную пару (key, value).

python
dct = {'a': 1, 'b': 2}
dct.popitem() # ('b', 2), dct = {'a': 1}
Зачем: использовать словарь как стек (LIFO).

dct.clear() — полностью очистить словарь.

python
dct = {'a': 1, 'b': 2}
dct.clear() # {}
Доступ и поиск

dct.get(key, default=None) — вернуть значение по ключу; если ключа нет — default.

python
dct = {'a': 1}
dct.get('a') # 1
dct.get('x') # None
dct.get('x', 0) # 0
Зачем: безопасный доступ без риска KeyError.

key in dct — проверить, есть ли ключ в словаре.

python
'a' in dct # True
'x' in dct # False
Зачем: быстрая проверка перед обращением.

Получение ключей, значений и пар

dct.keys() — вернуть все ключи.

python
dct = {'a': 1, 'b': 2}
dct.keys() # dict_keys(['a', 'b'])
dct.values() — вернуть все значения.

python
dct.values() # dict_values([1, 2])
dct.items() — вернуть все пары (key, value).

python
dct.items() # dict_items([('a', 1), ('b', 2)])
Зачем: перебор в цикле: for k, v in dct.items():

Копирование

dct.copy() — поверхностная копия словаря.

python
a = {'a': 1, 'b': 2}
b = a.copy() # b — отдельный словарь
Зачем: чтобы менять копию и не трогать оригинал.
Просмотры: 83
Открыть в MAX Сообщить о неточности

Сообщить о неточности

Опишите, что нужно исправить. Если есть источник, добавьте ссылку.

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти