Python Glossary English

Python 3.3+Исключенияисключение

NotADirectoryError

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

Операция ожидала каталог, но получила не-каталог (подкласс OSError).

Синтаксис

raise NotADirectoryError

Возникает не на пустом месте, а когда путь, обязанный быть каталогом, на деле оказывается файлом: os.listdir('data.txt'), os.scandir по файлу, открытие 'data.txt/inner.txt', где промежуточный компонент — обычный файл. Разумная реакция — проверить Path.is_dir() до операции, а в except ловить более общий OSError: на разных ОС одна и та же ситуация может прилететь другим подклассом (например, FileNotFoundError).

Примеры

try:
    raise NotADirectoryError
except NotADirectoryError as e:
    print(type(e).__name__)   # → NotADirectoryError

См. также

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