Подтвердить что ты не робот

Разница между os.path.exists и os.path.isfile в python

Мне любопытно, когда эти две функции возвратят разные значения. Также, если вы могли бы прояснить разницу между дорожкой/каталогом/файлом, который будет оценен.

4b9b3361

Ответ 1

Как вы уже выяснили, разница между exists и isfile заключается в том, что первый возвращает True в случае, если данный путь является файлом или, тогда как последний возвращает только True, если путь указывает на файл.

Каталоги и файлы довольно схожи с технической точки зрения. Файл может содержать любые данные. Каталог - это просто специальная запись в файловой системе (по крайней мере, в операционных системах Unix это просто специальный файл), который представляет собой факт, что он может содержать файлы и другие каталоги. Это полезное средство для создания структуры данных. Используя каталоги, вы можете упорядочить свои данные в иерархической структуре.

Особенно в мире Windows каталоги часто называют "папками". Я уверен, что вы сами используете "папки" для организации ваших файлов.

A путь - это однозначный указатель на ресурс в файловой системе. Он может указывать на файл или на каталог.

Ответ 2

В каталоге проверяются true для exists, но false для isfile. Существует несколько различных типов объектов файловой системы, для которых это также верно.

isfile означает, что он является обычным файлом. Это более конкретный, чем существует.