Python Glossary English

Python 3.4+pathlibфункция

.is_dir()

проверки

Проверяет, что путь существует и указывает на каталог. Для файла и для несуществующего пути — False.

Синтаксис

p.is_dir()

is_dir() не отличает «пути нет вовсе» от «путь есть, но это файл» — в обоих случаях просто False; если разница важна, спрашивайте exists() отдельно. Проверка идёт по назначению симлинка: ссылка на каталог считается каталогом. И помните про гонку между проверкой и действием — для реальной работы с каталогом надёжнее выполнить операцию и поймать OSError, чем полагаться на предварительный if.

Примеры

from pathlib import Path
Path('/tmp').is_dir() # → True
Path('/etc/hosts').is_dir() # → False (это файл)
Path.cwd().is_dir()  # → True
Path('no_such_dir_12345').is_dir()  # → False: несуществующий путь тоже даёт False, без исключения
[p.name for p in Path.cwd().iterdir() if p.is_dir()]  # → список имён подкаталогов текущего каталога

См. также

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