Python Glossary English

все Python 3Исключенияисключение

KeyError

встроенные исключения

Вызывается при обращении к несуществующему ключу словаря. Используй .get() чтобы избежать.

Синтаксис

raise KeyError(key)

Единственный аргумент исключения — сам ключ, поэтому print(e) покажет 'b' в кавычках и больше ничего: понятное сообщение придётся писать самому. И .get() не всегда правильный ответ — если ключ обязан присутствовать, значение по умолчанию лишь замаскирует опечатку и уронит программу позже и не в том месте; кстати, тот же KeyError бросает set.remove().

Примеры

d = {'a': 1}
d['b']               # KeyError: 'b'
d.get('b', 0)        # 0 — безопасно
try:
    v = d['x']
except KeyError:
    v = None

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности