Как использовать pathlib для работы с путями?
Python модуль pathlib: управление файловой системой
Обратите внимание, что данный контент является переработкой оригинальной статьи, которую я не могу назвать источником или оригинальным автором.
Модуль pathlib
является частью стандартной библиотеки Python и помогает справиться со всеми этими задачами. Он объединяет необходимую функциональность в одном месте и предоставляет ее через методы и свойства удобного объекта Path
.
В этом руководстве вы узнаете, как:
- Работать с путями к файлам и папкам в Python
- Создавать объект
Path
разными способами - Использовать
pathlib
для чтения и записи файлов - Внимательно копировать, перемещать и удалять файлы
- Манипулировать путями и файловой системой
- Выбирать компоненты пути
Вы также изучите множество примеров кода в этом руководстве, которые можно использовать для ваших ежедневных операций с файлами. Например, вы узнаете, как подсчитывать файлы, отображать дерево каталогов, находить самый недавно измененный файл и создавать уникальные имена файлов.
Отлично, что pathlib
предлагает множество методов и свойств, но они могут быть сложными для запоминания на ходу. В этом поможет шпаргалка. Чтобы получить ее, перейдите по ссылке ниже:
Проблема с представлением путей в виде строк
С помощью модуля pathlib
Python вы можете избежать некоторых проблем. Его гибкий класс Path
открывает возможности для интуитивной семантики. Прежде чем рассмотреть класс ближе, давайте кратко рассмотрим, как разработчики Python раньше работали с путями без pathlib
.
Вот пример кода, который перемещает файлы в подпапку:
Инициализация Path
объекта с использованием методов
Строка, представляющая путь, не является объектом, который может выполнять операции над файловой системой. pathlib
позволяет использовать методы Path
объекта, чтобы работать с путями в Python.
В этом примере инициализируется объект Path
с использованием метода home()
. Этот метод возвращает домашнюю директорию текущего пользователя и создает объект Path
представляющий этот путь. Результат выводится на экран.
Передача строки в Path
Вы также можете инициализировать объект Path
, передав строку в конструктор:
В этом примере инициализируется объект Path
, представляющий путь к файлу "my_folder/my_file.txt"
.
Объединение путей
Модуль pathlib
также предоставляет методы для объединения путей. Вы можете использовать метод joinpath()
для объединения нескольких частей пути в один:
В этом примере создаются объекты Path
для папки "my_folder"
и файла "my_file.txt"
, а затем они объединяются вместе с помощью метода joinpath()
. Результат выводится на экран.