Каталог Python та управління файлами

У цьому підручнику ви дізнаєтеся про управління файлами та каталогами в Python, тобто створення каталогу, його перейменування, перелік усіх каталогів та робота з ними.

Відео: Модуль Python os

Каталог Python

Якщо в нашій програмі Python існує велика кількість файлів, які ми обробляємо, ми можемо розмістити наш код у різних каталогах, щоб зробити речі більш керованими.

Каталог або папка - це сукупність файлів та підкаталогів. Python має osмодуль, який надає нам багато корисних методів роботи з каталогами (і файлами також).

Отримати поточний каталог

Ми можемо отримати справжній робочий каталог, використовуючи getcwd()метод osмодуля.

Цей метод повертає поточний робочий каталог у вигляді рядка. Ми також можемо використовувати getcwdb()метод, щоб отримати його як байт-об'єкт.

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

Додатковий зворотний слеш передбачає послідовність виходу. print()Функція зробить це правильно.

 >>> print(os.getcwd()) C:Program FilesPyScripter

Зміна каталогу

Ми можемо змінити поточний робочий каталог за допомогою chdir()методу.

Новий шлях, який ми хочемо змінити, повинен бути вказаний як рядок для цього методу. Ми можемо використовувати як косу риску, так /і косу риску, щоб розділити елементи шляху.

Безпечніше використовувати послідовність екранування, коли використовується коса риса.

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

Список каталогів та файлів

Усі файли та підкаталоги всередині каталогу можна отримати за допомогою listdir()методу.

Цей метод бере шлях і повертає список підкаталогів та файлів у цьому шляху. Якщо шлях не вказаний, він повертає список підкаталогів та файлів із поточного робочого каталогу.

 >>> 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')

Створення нового довідника

Ми можемо створити новий каталог, використовуючи mkdir()метод.

Цей метод бере шлях до нового каталогу. Якщо повний шлях не вказаний, новий каталог створюється в поточному робочому каталозі.

 >>> os.mkdir('test') >>> os.listdir() ('test')

Перейменування каталогу або файлу

rename()Метод може перейменувати папку або файл.

Для перейменування будь-якого каталогу або файлу rename()метод бере два основних аргументи: старе ім'я як перший аргумент та нове ім'я як другий аргумент.

 >>> os.listdir() ('test') >>> os.rename('test','new_one') >>> os.listdir() ('new_one')

Видалення каталогу або файлу

Файл можна видалити (видалити) за допомогою remove()методу.

Аналогічним чином rmdir()метод видаляє порожній каталог.

 >>> os.listdir() ('new_one', 'old.txt') >>> os.remove('old.txt') >>> os.listdir() ('new_one') >>> os.rmdir('new_one') >>> os.listdir() ()

Примітка : rmdir()Метод може видаляти лише порожні каталоги.

Для того, щоб видалити непустий каталог, ми можемо використовувати rmtree()метод всередині shutilмодуля.

 >>> os.listdir() ('test') >>> os.rmdir('test') Traceback (most recent call last):… OSError: (WinError 145) The directory is not empty: 'test' >>> import shutil >>> shutil.rmtree('test') >>> os.listdir() ()

Цікаві статті...