Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Python

Управление директориями и файлами в Python: полное руководство

Управление директориями и файлами в Python

Узнайте, как эффективно создавать, перемещаться, перечислять, переименовывать и удалять директории и файлы в Python с наглядными примерами.

Видео: Модуль os в Python

Директории в Python

Когда проект растёт, организация кода в хорошо структурированные папки становится необходимой. Директория (или папка) — это контейнер для файлов и поддиректорий, а модуль os Python предоставляет надёжные инструменты для их управления.


Получение текущей директории

Используйте os.getcwd() для получения текущей рабочей директории как строки. Если нужно представление в байтах, os.getcwdb() сделает это.

import os
os.getcwd()   # 'C:\\Program Files\\PyScripter'
os.getcwdb()  # b'C:\\Program Files\\PyScripter'

Двойной обратный слэш указывает на escape-последовательность. Использование print() отображает путь корректно:

print(os.getcwd())  # C:\Program Files\PyScripter

Смена директории

Переключите текущую рабочую директорию с os.chdir(path). Аргумент path может использовать прямые или обратные слэши; просто помните экранировать обратные слэши или использовать сырые строки.

os.chdir('C:\\Python33')
print(os.getcwd())  # C:\Python33

Перечисление директорий и файлов

Получите все файлы и поддиректории в целевой папке с os.listdir(path). Если path опущен, функция работает с текущей рабочей директорией.

print(os.getcwd())  # C:\Python33
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']

Создание новой директории

Создайте папку с os.mkdir(path). Если путь относительный, новая директория появится в текущей рабочей директории.

os.mkdir('test')
print(os.listdir())  # ['test']

Переименование директории или файла

Та же функция os.rename(src, dst) обрабатывает и файлы, и папки. Укажите старое имя как src, а желаемое новое — как dst:

os.listdir()  # ['test']
os.rename('test', 'new_one')
print(os.listdir())  # ['new_one']

Удаление директории или файла

Удалите файл с os.remove(path). Для удаления пустой папки используйте os.rmdir(path):

os.listdir()  # ['new_one', 'old.txt']
os.remove('old.txt')
print(os.listdir())  # ['new_one']
os.rmdir('new_one')
print(os.listdir())  # []

Примечание: os.rmdir() работает только с пустыми директориями.

Если нужно удалить папку, содержащую файлы или подпапки, используйте функцию shutil.rmtree() из модуля shutil:

os.listdir()  # ['test']
os.rmdir('test')  # Traceback ... OSError: [WinError 145] The directory is not empty: 'test'
import shutil
shutil.rmtree('test')
print(os.listdir())  # []

Python

  1. Управление памятью в C++: экспертное использование new и delete
  2. Ключевые слова и идентификаторы в Python: мастерство зарезервированных слов и соглашений об именовании
  3. Операторы, отступы и комментарии в Python: понятное руководство
  4. Переменные, константы и литералы в Python — подробное руководство
  5. Мастерство преобразования типов в Python: Полное руководство
  6. Мастерство ввода-вывода и импорта модулей в Python: Практическое руководство
  7. Глобальные, локальные и nonlocal переменные в Python: понимание и применение
  8. Числа, преобразование типов и математика в Python: полное руководство
  9. Ошибки и встроенные исключения в Python: полное руководство
  10. Получение текущей даты и времени в Python: практическое руководство