Modulul os și lucrul cu sistemul de fișiere
Un set de funcționalități pentru lucrul cu directoarele și fișierele este oferit de modulul încorporat os. Deși acesta conține multe funcții, vom analiza doar pe cele principale:
- mkdir(): creează un nou folder
- rmdir(): șterge un folder
- rename(): redenumește un fișier
- remove(): șterge un fișier
Crearea și ștergerea unui folder
Pentru a crea un folder, se utilizează funcția mkdir(), căreia i se transmite calea către folderul care urmează să fie creat:
import os
# cale relativă față de scriptul curent
os.mkdir("hello")
# cale absolută
os.mkdir("c://somedir")
os.mkdir("c://somedir/hello")
Pentru a șterge un folder, se folosește funcția rmdir(), căreia i se transmite calea către folderul care urmează să fie șters:
import os
# cale relativă față de scriptul curent
os.rmdir("hello")
# cale absolută
os.rmdir("c://somedir/hello")
Redenumirea unui fișier
Pentru a redenumi un fișier, se apelează funcția rename(source, target), unde primul parametru este calea către fișierul inițial, iar al doilea este noul nume al fișierului. Se pot utiliza atât căi absolute, cât și relative. De exemplu, să presupunem că în folderul C://SomeDir/ se află fișierul somefile.txt. Îl vom redenumi în hello.txt:
import os
os.rename("C://SomeDir/somefile.txt", "C://SomeDir/hello.txt")
Ștergerea unui fișier
Pentru a șterge un fișier, se folosește funcția remove(), căreia i se transmite calea către fișier:
import os
os.remove("C://SomeDir/hello.txt")
Verificarea existenței unui fișier
Dacă încercăm să deschidem un fișier care nu există, Python va arunca o excepție FileNotFoundError. Pentru a gestiona această excepție, putem folosi construcția try...except. Totuși, putem verifica dacă fișierul există înainte de a-l deschide, folosind metoda os.path.exists(path). În această metodă se transmite calea care trebuie verificată:
import os
filename = input("Introduceți calea către fișier: ")
if os.path.exists(filename):
print("Fișierul specificat există")
else:
print("Fișierul nu există")
Aceste funcții esențiale ale modulului os facilitează gestionarea și manipularea fișierelor și directoarelor în Python.