Conținut curs
Gestionarea erorilor și excepțiilor
0/1
Python Intermediar
Despre lecție

Introducere

În această lecție, vom explora citirea și scrierea în fișiere binare în Python. Fișierele binare sunt fișiere ale căror conținut este format din octeți, spre deosebire de fișierele text care conțin doar caractere. Lucrul cu fișiere binare este util atunci când avem de-a face cu date care nu pot fi reprezentate eficient ca text, precum imagini, sunete sau fișiere comprimate.

Cuprins

  1. Deschiderea fișierelor binare
  2. Citirea fișierelor binare
  3. Scrierea fișierelor binare
  4. Utilizarea managerului de context pentru lucrul cu fișiere binare
  5. Gestionarea erorilor și excepțiilor legate de fișiere binare
  6. Încheiere și concluzii

1. Deschiderea fișierelor binare

Pentru a deschide un fișier în modul binar, adăugăm 'b' la modul de deschidere în funcția open(). Modurile uzuale pentru deschiderea unui fișier în modul binar sunt:

  • Modul de citire binară ('rb'): Deschide fișierul în modul de citire binară și returnează un obiect care poate fi folosit pentru a citi conținutul fișierului ca octeți.
  • Modul de scriere binară ('wb'): Deschide fișierul în modul de scriere binară și returnează un obiect care poate fi folosit pentru a scrie octeți în fișier. Dacă fișierul există deja, conținutul său va fi șters.
  • Modul de adăugare binară ('ab'): Deschide fișierul în modul de adăugare binară și returnează un obiect care poate fi folosit pentru a adăuga octeți la sfârșitul fișierului.

Exemplu de deschidere a unui fișier în modul de citire binară:

python
file = open('file.bin', 'rb')

2. Citirea fișierelor binare

Pentru a citi dintr-un fișier binar deschis în modul de citire binară, putem folosi metoda read() a obiectului fișier. Această metodă va citi octeții din fișier și va returna un obiect de tip bytes.

Exemplu de citire a fișierului binar:

python
with open('file.bin', 'rb') as file:
    data = file.read()
    print(data)

3. Scrierea fișierelor binare

Pentru a scrie într-un fișier binar deschis în modul de scriere binară, putem folosi metoda write() a obiectului fișier. Această metodă va scrie octeții dintr-un obiect de tip bytes în fișier.

Exemplu de scriere a fișierului binar:

python
with open('file.bin', 'wb') as file:
    data = b'x01x02x03'
    file.write(data)

4. Utilizarea managerului de context pentru lucrul cu fișiere binare

La fel ca în cazul fișierelor text, când lucrăm cu fișiere binare, este important să ne asigurăm că fișierul este închis corect după ce am terminat de lucrat cu el. O modalitate de a face acest lucru este să folosim managerul de context with, care se ocupă automat de închiderea fișierului.

Exemplu de folosire a managerului de context:

python
with open('file.bin', 'rb') as file:
    data = file.read()
    print(data)

5. Gestionarea erorilor și excepțiilor legate de fișiere binare

Când lucrăm cu fișiere binare, este posibil să întâmpinăm diverse erori, cumar fi:

  • Fișierul nu există
  • Permisiuni insuficiente pentru a accesa fișierul
  • Eroare de citire sau scriere a fișierului

Pentru a gestiona aceste erori, putem folosi blocurile try și except. De exemplu, putem folosi clauza except pentru a afișa un mesaj de eroare și a continua execuția programului în cazul în care fișierul nu poate fi deschis.

Exemplu de gestionare a erorilor în lucrul cu fișiere binare:

python
try:
    with open('file.bin', 'rb') as file:
        data = file.read()
except FileNotFoundError:
    print("Fișierul nu a fost găsit")
except PermissionError:
    print("Nu aveți permisiunea de a accesa acest fișier")
except IOError:
    print("A apărut o eroare în timpul citirii fișierului")

6. Încheiere și concluzii

În această lecție, am învățat cum să citim și să scriem fișiere binare în Python. Citirea și scrierea fișierelor binare este utilă în multe cazuri, cum ar fi manipularea fișierelor de imagini, sunete și compresie.

Puncte cheie ale lecției:

  • Deschiderea fișierelor binare se face prin adăugarea modului 'b' în funcția open().
  • Citirea fișierelor binare se face cu metoda read() a obiectului fișier, care returnează un obiect de tip bytes.
  • Scrierea fișierelor binare se face cu metoda write() a obiectului fișier, care primește un obiect de tip bytes.
  • Este important să ne asigurăm că fișierele binare sunt închise corect după ce am terminat de lucrat cu ele, folosind managerul de context with.
  • Gestionarea erorilor și excepțiilor poate fi realizată cu ajutorul blocurilor try și except.