Python os path: работа с файловой системой в Python
Работа с путями и системными операционными функциями в Python может быть реализована с помощью модулей os и path. Модуль os предоставляет функции для взаимодействия с операционной системой, а модуль path содержит методы для работы с путями файловой системы.
Для начала импортируем оба модуля:
import os
import os.path
Теперь, чтобы получить текущий рабочий каталог, можно использовать функцию os.getcwd():
current_dir = os.getcwd()
print("Текущий рабочий каталог:", current_dir)
Чтобы создать или удалить каталог, можно использовать функции os.mkdir() и os.rmdir() соответственно. Например, создадим новый каталог test:
new_dir = os.path.join(current_dir, "test")
os.mkdir(new_dir)
print("Каталог создан!")
Если нужно создать несколько вложенных каталогов сразу, можно использовать функцию os.makedirs():
nested_dir = os.path.join(current_dir, "test1", "test2", "test3")
os.makedirs(nested_dir)
print("Вложенные каталоги созданы!")
Для удаления каталога, включая все его содержимое, можно использовать функцию shutil.rmtree() из модуля shutil:
import shutil
shutil.rmtree(new_dir)
print("Каталог удален!")
Чтобы проверить существование файла или каталога, можно использовать функции os.path.exists() и os.path.isdir(). Например, проверим существование каталога test1:
dir_exists = os.path.exists(os.path.join(current_dir, "test1"))
print("Каталог test1 существует?", dir_exists)
is_dir = os.path.isdir(os.path.join(current_dir, "test1"))
print("Это каталог?", is_dir)
Для объединения путей используется функция os.path.join(). Она автоматически добавляет правильный разделитель пути в зависимости от операционной системы. Например, пусть path1 содержит путь к текущему каталогу, а path2 - название файла. С помощью os.path.join() мы можем объединить эти два элемента в один путь:
path1 = os.getcwd()
path2 = "file.txt"
full_path = os.path.join(path1, path2)
print("Полный путь к файлу:", full_path)
Возможно, вам понадобится получить имя файла или расширение файла из пути. Для этого можно использовать функции os.path.basename() и os.path.splitext() соответственно:
file_path = "/path/to/file.txt"
file_name = os.path.basename(file_path)
file_ext = os.path.splitext(file_path)[1]
print("Имя файла:", file_name)
print("Расширение файла:", file_ext)
Описанные выше примеры показывают только некоторые функции модулей os и path для работы с путями и системными операционными функциями в Python. Эти модули обладают еще большим количеством полезных функций, которые могут быть использованы в различных сценариях.