Python Glossary English

Python 3.4+pathlibфункция

.is_file()

проверки

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

Синтаксис

p.is_file()

«Обычный файл» здесь означает именно обычный: сокеты, именованные каналы и файлы устройств существуют, но is_file() для них вернёт False. Симлинк прослеживается — ссылка на файл считается файлом. Не стройте логику на отрицании: not p.is_file() ещё не значит «каталог», это может быть и просто несуществующий путь.

Примеры

from pathlib import Path
import sys
Path('/etc/hosts').is_file() # → True
Path('/tmp').is_file() # → False (это каталог)
print(Path(sys.executable).is_file())   # → True (сам интерпретатор — обычный файл)
print(Path(sys.executable).parent.is_file())   # → False (каталог, хотя exists() → True)
print(Path('no_such_file_42.txt').is_file())   # → False (несуществующий путь, а не исключение)

См. также

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