Работа с папками в Python включает в себя ряд операций, таких как создание новых папок, копирование, перемещение, переименование и удаление. Рассмотрим, как можно сделать это с помощью модулей `os` и `shutil`:
Получение текущего рабочего каталога
import os
current_directory = os.getcwd()
print(f"Текущий рабочий каталог: {current_directory}")
Изменение текущего рабочего каталога
import os
new_directory = "/path/to/new/directory"
os.chdir(new_directory)
print(f"Текущий рабочий каталог изменен на: {os.getcwd()}")
Создание новых папок
Для создания новой папки в Python используется функция `mkdir()` из модуля `os` или `makedirs()` из модуля `os.path`. Вторая функция создает все необходимые промежуточные папки, если они отсутствуют.
import os
# Создание новой папки
os.mkdir('новая_папка')
# Создание новой и промежуточной папки
os.makedirs('промежуточная_папка/новая_папка', exist_ok=True)
# exist_ok=True позволяет при наличии такой папки не вызывать ошибку
Копирование папок
Для копирования папок в Python можно использовать функцию `copytree()` из модуля `shutil`. Пример:
import shutil
# Копирование папки
shutil.copytree('исходная_папка', 'новая_папка')
Перемещение и переименование папок
Для перемещения или переименования папок используется функция `rename()` из модуля `os` и 'move' из модуля `shutil`. Пример:
import os
import shutil
# Переименование папки
os.rename('старое_имя', 'новое_имя')
# Перемещение папки
shutil.move('исходная_папка', 'целевая_папка')
Удаление папок
Для удаления папок в Python используется функция `rmdir()` из модуля `os` или `rmtree()` из модуля `shutil`. Пример:
import os
import shutil
# Удаление пустой папки
os.rmdir('пустая_папка')
# Удаление папки и всех ее содержимого
shutil.rmtree('папка_с_содержимым')
Создание новой директории и файла, затем копирование и перемещение
import os
import shutil
# Создание новой директории
new_directory = "папка_пример"
os.makedirs(new_directory, exist_ok=True)
# Создание нового файла в этой директории
file_path = os.path.join(new_directory, "пример.txt")
# Копирование файла
copied_file_path = os.path.join(new_directory, "скопированный_пример.txt")
shutil.copy(file_path, copied_file_path)
# Перемещение файла
moved_file_path = os.path.join(new_directory, "перемещенный_пример.txt")
shutil.move(copied_file_path, moved_file_path)
# Вывод информации о созданных файлах и директориях
print(f"Создана директория: {new_directory}")
print(f"Создан файл: {file_path}")
print(f"Скопирован файл: {copied_file_path} -> {moved_file_path}")