Проверка с использованием pathlib.Path.is_dir()
На предыдущем этапе вы использовали функцию os.path.isdir()
для проверки, является ли путь директорией. Теперь давайте рассмотрим другой способ достичь того же результата с использованием модуля pathlib
, который предоставляет объектно-ориентированный подход к путям в файловой системе.
Модуль pathlib
предлагает класс Path
, представляющий пути в файловой системе. Этот класс имеет несколько методов для взаимодействия с файлами и директориями, в том числе метод is_dir()
, который проверяет, является ли путь директорией.
Для использования pathlib
сначала нужно импортировать класс Path
из модуля pathlib
. Затем можно создать объект Path
, представляющий путь, который вы хотите проверить. Наконец, можно вызвать метод is_dir()
на объекте Path
, чтобы определить, является ли он директорией.
Откройте файл check_type.py
в редакторе кода WebIDE и измените его содержимое следующим образом:
from pathlib import Path
directory_path = Path("my_directory")
file_path = Path("my_file.txt")
nonexistent_path = Path("nonexistent_directory")
if directory_path.is_dir():
print(f"{directory_path} is a directory")
else:
print(f"{directory_path} is not a directory")
if file_path.is_dir():
print(f"{file_path} is a directory")
else:
print(f"{file_path} is not a directory")
if nonexistent_path.is_dir():
print(f"{nonexistent_path} is a directory")
else:
print(f"{nonexistent_path} is not a directory")
В этом скрипте мы создаем объекты Path
для my_directory
, my_file.txt
и nonexistent_directory
. Затем мы используем метод is_dir()
для проверки, является ли каждый путь директорией.
Сохраните файл check_type.py
.
Теперь запустите скрипт из терминала:
python check_type.py
Вы должны увидеть следующий вывод:
my_directory is a directory
my_file.txt is not a directory
nonexistent_directory is not a directory
Как вы можете видеть, вывод такой же, как на предыдущем этапе при использовании os.path.isdir()
. Метод pathlib.Path.is_dir()
предоставляет альтернативный, объектно-ориентированный способ проверки, является ли путь директорией.
Использование pathlib
может сделать ваш код более читаемым и легким в поддержке, особенно при работе с сложными операциями в файловой системе.