Модуль OS і робота з файловою системою Python

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

  • mkdir(): створює нову папку
  • rmdir(): видаляє папку
  • rename(): перейменовує файл
  • remove(): видаляє файл

Створення та видалення папки

Для створення папки застосовується функція mkdir(), в яку передається шлях до створюваної папки:

import os     

# шлях щодо поточного скрипта  
os.mkdir("hello")  
# абсолютний шлях  
os.mkdir("c://somedir")  
os.mkdir("c://somedir/hello") 

Для видалення папки використовується функція rmdir(), в яку передається шлях до папки, що видаляється:

import os  

# шлях щодо поточного скрипта  
os.rmdir("hello")  
# абсолютний шлях  
os.rmdir("c://somedir/hello")  

Перейменування файлу

Для перейменування викликається функція rename(source, target), перший параметр якої - шлях до вихідного файлу, а другий - нове ім'я файлу. В якості шляхів можуть використовуватися як абсолютні, так і відносні. Наприклад, нехай в папці C://SomeDir/ розташовується файл somefile.txt. Перейменуємо його в файл " hello.txt":

import os     

os.rename("C://SomeDir/somefile.txt", "C://SomeDir/hello.txt")  

Видалення файлу

Для видалення викликається функція remove(), в яку передається шлях до файлу:

import os  

os.remove("C://SomeDir/hello.txt")  

Існування файлу

Якщо ми спробуємо відкрити файл, який не існує, то Python викине виняток FileNotFoundError. Для вилову винятку ми можемо використовувати конструкцію try...except. Однак можна вже до відкриття файлу перевірити, чи існує він чи ні за допомогою методу os.path.exists(path). В цей метод передається шлях, який необхідно перевірити:

filename = input ("введіть шлях до файлу: ")  
if os.path.exists(filename):  
    print("Вказаний файл існує")   
else:  
    print("Файл не існує")