Python Glossary English

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

encodings.CodecRegistryError

модульные исключения

Ошибка реестра кодеков: модуль из пакета encodings вернул негодную или несовместимую запись кодека (подкласс LookupError и SystemError).

Синтаксис

raise encodings.CodecRegistryError(...)

Это не про «неправильную кодировку»: неизвестное имя кодировки даёт обычный LookupError, а битые байты — UnicodeDecodeError. CodecRegistryError означает поломку самого механизма кодеков — модуль из пакета encodings зарегистрировал что-то, не годное как CodecInfo. В учебном коде почти не встречается; из-за наследования сразу от LookupError и SystemError его перехватит и except LookupError.

Примеры

import encodings
print(issubclass(encodings.CodecRegistryError, Exception))   # → True
print(issubclass(encodings.CodecRegistryError, LookupError))   # → True
print(issubclass(encodings.CodecRegistryError, SystemError))   # → True
print(encodings.CodecRegistryError('bad search function'))   # → bad search function
print('abc'.encode('nosuchcodec'))   # → LookupError

См. также

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