⊗pyPmExcInr 74 of 129 menu

Introduzione alle eccezioni in Python

In questa sezione verranno considerate le eccezioni in Python. Per iniziare, è necessario capire cosa siano.

Durante la scrittura di un programma, lo sviluppatore implicitamente presume che tutti i meccanismi tecnico-software utilizzati funzionino correttamente.

Tuttavia, non è sempre così. Durante il trasferimento dei dati attraverso la rete, la connessione si interrompe e i dati ci arrivano in forma non corretta, o non arrivano affatto. Durante la scrittura di un file si scopre che lo spazio allocato per noi sul disco rigido è finito, e il file non può essere scritto. Durante la lettura di un file si scopre che tale file non esiste e non abbiamo da dove leggere. Durante la stampa dei dati sulla stampante avviene un'interruzione del cavo che collega la stampante e il computer.

Tutte le situazioni descritte hanno un'essenza comune: si verifica un certo guasto, che porta all'impossibilità o all'insensatezza del completamento dell'operazione pianificata.

Ci sono anche situazioni in cui si verifica un certo errore, che non è un guasto. Ad esempio, si chiede all'utente la sua email, e lui inserisce l'email in un formato non corretto. È chiaro che il nostro programma non può continuare a elaborare l'email, poiché essa non è corretta. Ma, tuttavia, questa non è un'eccezione. Il nostro programma può correggere da solo la situazione: mostrerà un messaggio di errore e l'utente ripeterà l'inserimento.

In realtà, la differenza tra un guasto e un non guasto è piuttosto sfumata. Un evento che un programma può interpretare come un'eccezione, un altro programma può interpretarlo come un certo errore, con cui può gestire.

Il criterio qui è il seguente: se all'insorgere di un problema il tuo programma può continuare a eseguire ciò per cui è destinato, allora non è un'eccezione, mentre se non può - allora sì, è un'eccezione.

Ad esempio, abbiamo un programma che deve chiedere l'email dell'utente. Se l'utente ha inserito l'email in un formato non corretto - questo non è un guasto. Questo è un problema previsto e il nostro programma continuerà a chiedere all'utente l'email tante volte finché non la inserisce correttamente.

Supponiamo che il nostro programma, che chiede l'email, debba anche inviare questa email corretta tramite internet. A questo punto si scopre che internet non funziona. Questo invece è già un problema: il programma non potrà in alcun modo inviare i dati tramite internet, se internet non funziona. Il programma, tuttavia, può continuare la sua esecuzione: può visualizzare informazioni sul problema, ripetere il tentativo di invio dopo un certo tempo, e così via. Ma queste azioni non sono esattamente ciò per cui il programma era destinato, poiché l'azione principale - l'invio dell'email - il programma non sarà in grado di farla.

Pertanto, molto spesso l'interpretazione di quale comportamento sia considerato normale, e quale eccezionale, dipende dai compiti affidati al programmatore.

Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta