Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Fondamenti della Gestione degli Errori in Python: Prevenzione degli Arresti Anomali del Codice | Padronanza della Gestione degli Errori in Python
Programmazione Strutturale in Python

bookFondamenti della Gestione degli Errori in Python: Prevenzione degli Arresti Anomali del Codice

La gestione degli errori è una competenza fondamentale per ogni programmatore, poiché consente ai programmi di rispondere in modo appropriato a problemi imprevisti. Questo capitolo tratta i tipi di errori e di eccezioni che si possono incontrare e come gestirli utilizzando i blocchi try ed except.

Tipi di errori ed eccezioni in Python

Python classifica gli errori in due categorie principali: errori di sintassi ed eccezioni.

Errori di sintassi

Gli errori di sintassi si verificano quando il parser rileva un'istruzione non corretta. Questo può essere dovuto a un errore di battitura, una parentesi mancante o un'indentazione errata. Ecco un esempio:

1
print("Hello world"
copy

Questo produrrà un errore di sintassi (SyntaxError) perché manca la parentesi di chiusura.

Eccezioni o errori di esecuzione

Le eccezioni sono errori che vengono rilevati durante l'esecuzione. Le eccezioni più comuni includono:

  • IndexError: tentativo di accedere a un indice che non esiste;
  • ValueError: passaggio di un argomento con un valore errato;
  • TypeError: incompatibilità di tipo di dato, come sommare una stringa a un intero;
  • ZeroDivisionError: divisione di un numero per zero;
  • FileNotFoundError: tentativo di accedere a un file che non esiste.

Ecco una gerarchia di eccezioni in cui ogni errore di livello inferiore eredita da quello superiore. Questo significa che, se si intercetta un'eccezione di livello superiore, come Exception, verranno intercettati anche tutti gli errori 'figli' derivati. Anche se non è necessario conoscere ogni singolo errore, quelli evidenziati in giallo sono i più comuni e particolarmente importanti da conoscere.

Il blocco try, except

Per gestire efficacemente le eccezioni, Python utilizza i blocchi try ed except. Questo consente al programma di continuare anche se si verifica un errore.

Esempio di blocco try, except

1234567
try: # Attempt to divide by zero result = 10 / 0 print("The result is", result) except ZeroDivisionError: # This code runs if the ZeroDivisionError is raised print("Attempted to divide by zero.")
copy

Se la divisione fosse possibile (cioè, dividendo per un numero diverso da zero), l'istruzione print all'interno del blocco try verrebbe eseguita e il blocco except verrebbe saltato. Il blocco except viene eseguito solo quando si verifica l'errore specifico che è progettato per intercettare.

Compito

Swipe to start coding

Scrivere uno script che gestisca diversi tipi di errori utilizzando operazioni di base.

#Usa i commenti come suggerimenti utili per risolvere questo esercizio 😉

Soluzione

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 1
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

close

bookFondamenti della Gestione degli Errori in Python: Prevenzione degli Arresti Anomali del Codice

Scorri per mostrare il menu

La gestione degli errori è una competenza fondamentale per ogni programmatore, poiché consente ai programmi di rispondere in modo appropriato a problemi imprevisti. Questo capitolo tratta i tipi di errori e di eccezioni che si possono incontrare e come gestirli utilizzando i blocchi try ed except.

Tipi di errori ed eccezioni in Python

Python classifica gli errori in due categorie principali: errori di sintassi ed eccezioni.

Errori di sintassi

Gli errori di sintassi si verificano quando il parser rileva un'istruzione non corretta. Questo può essere dovuto a un errore di battitura, una parentesi mancante o un'indentazione errata. Ecco un esempio:

1
print("Hello world"
copy

Questo produrrà un errore di sintassi (SyntaxError) perché manca la parentesi di chiusura.

Eccezioni o errori di esecuzione

Le eccezioni sono errori che vengono rilevati durante l'esecuzione. Le eccezioni più comuni includono:

  • IndexError: tentativo di accedere a un indice che non esiste;
  • ValueError: passaggio di un argomento con un valore errato;
  • TypeError: incompatibilità di tipo di dato, come sommare una stringa a un intero;
  • ZeroDivisionError: divisione di un numero per zero;
  • FileNotFoundError: tentativo di accedere a un file che non esiste.

Ecco una gerarchia di eccezioni in cui ogni errore di livello inferiore eredita da quello superiore. Questo significa che, se si intercetta un'eccezione di livello superiore, come Exception, verranno intercettati anche tutti gli errori 'figli' derivati. Anche se non è necessario conoscere ogni singolo errore, quelli evidenziati in giallo sono i più comuni e particolarmente importanti da conoscere.

Il blocco try, except

Per gestire efficacemente le eccezioni, Python utilizza i blocchi try ed except. Questo consente al programma di continuare anche se si verifica un errore.

Esempio di blocco try, except

1234567
try: # Attempt to divide by zero result = 10 / 0 print("The result is", result) except ZeroDivisionError: # This code runs if the ZeroDivisionError is raised print("Attempted to divide by zero.")
copy

Se la divisione fosse possibile (cioè, dividendo per un numero diverso da zero), l'istruzione print all'interno del blocco try verrebbe eseguita e il blocco except verrebbe saltato. Il blocco except viene eseguito solo quando si verifica l'errore specifico che è progettato per intercettare.

Compito

Swipe to start coding

Scrivere uno script che gestisca diversi tipi di errori utilizzando operazioni di base.

#Usa i commenti come suggerimenti utili per risolvere questo esercizio 😉

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 1
single

single

some-alt