Каталог — это набор файлов и подкаталогов. Каталог внутри каталога называется подкаталогом. В Python есть модуль os, который предоставляет множество полезных методов для работы с каталогами и файлами.
Текущий каталог в Python
Мы можем вывести текущий каталог с помощью метода getcwd() модуля os
. Этот метод возвращает текущий рабочий каталог в виде строки. Например:
1 2 3 |
import os print(os.getcwd()) |
Результат:
C:\Program Files\PyScripter
Изменение каталога в Python
В Python мы можем изменить текущий рабочий каталог с помощью метода chdir(). Новый путь, который мы хотим использовать, нужно указать при вызове этого метода в виде строки. При этом для разделения элементов пути мы можем использовать как прямую косую черту /
, так и обратную косую черту \
. Например:
1 2 3 4 5 6 |
import os # Изменение каталога os.chdir('C:\\Python33') print(os.getcwd()) |
Результат:
C:\Python33
Список каталогов и файлов в Python
Все файлы и подкаталоги внутри каталога можно получить с помощью метода listdir(). Этот метод принимает путь и возвращает список подкаталогов и файлов по указанному пути.
Если путь не указан, возвращается список подкаталогов и файлов из текущего рабочего каталога.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
import os print(os.getcwd()) C:\Python33 # Cписок всех подкаталогов os.listdir() ['DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'NEWS.txt', 'python.exe', 'pythonw.exe', 'README.txt', 'Scripts', 'tcl', 'Tools'] os.listdir('G:\\') ['$RECYCLE.BIN', 'Movies', 'Music', 'Photos', 'Series', 'System Volume Information'] |
Создание нового каталога в Python
В Python мы можем создать новый каталог с помощью метода mkdir(). Этот метод принимает путь к новому каталогу. Если полный путь не указан, новый каталог создается в текущем рабочем каталоге.
1 2 3 4 |
os.mkdir('test') os.listdir() ['test'] |
Переименование каталога или файла
В Python мы можем переименовать каталог или файл с помощью метода rename(). Данный метод принимает два основных аргумента:
Старое имя в качестве первого аргумента.
Новое имя в качестве второго аргумента.
Например:
1 2 3 4 5 6 7 8 9 10 |
import os os.listdir() ['test'] # Переименование каталога os.rename('test','new_one') os.listdir() ['new_one'] |
Здесь каталог 'test'
переименовывается в 'new_one'
с помощью метода rename().
Удаление каталога или файла в Python
В Python мы можем использовать метод remove() или метод rmdir() для удаления файла или каталога.
Сначала давайте воспользуемся методом remove() для удаления файла:
1 2 3 4 |
import os # Удаление файла "myfile.txt" os.remove("myfile.txt") |
Теперь давайте воспользуемся методом rmdir() для удаления пустого каталога:
1 2 3 4 |
import os # Удаление пустого каталога "mydir" os.rmdir("mydir") |
Чтобы удалить непустой каталог, мы можем использовать метод rmtree() из модуля shutil
. Например:
1 2 3 4 |
import shutil # Удаление каталога "mydir" и всего его содержимого shutil.rmtree("mydir") |
Важно отметить, что эти функции безвозвратно удаляют файлы или каталоги, поэтому при их использовании нужно быть осторожным.