Python crea eccezioni personalizzate

Python crea eccezioni personalizzate
Mentre lavori in qualsiasi ambiente di programmazione, potresti aver riscontrato diversi errori quando qualcosa va storto con il tuo codice. Si dice che tali eccezioni che si verificano automaticamente dall'interprete o dal compilatore. Proprio come le eccezioni integrate, alcuni linguaggi di programmazione ci forniscono la possibilità di creare eccezioni personalizzate in base alle nostre esigenze. Hai mai provato a creare le tue eccezioni all'interno del blocco di codice try-catch nella programmazione orientata agli oggetti? All'interno di questo articolo, discuteremo di un metodo semplice per creare eccezioni personalizzate in Python. Cominciamo con il lancio dell'applicazione terminale dall'area di attività di Linux utilizzando il semplice collegamento "Ctrl+Alt+T". Devi installare l'ultima versione di Python e sei a posto.

Dopo l'installazione di Python, abbiamo bisogno di un file Python per creare codici. Per questo, utilizzeremo la parola chiave "touch" nell'area di query e il nome file per un file da creare. Eseguire questo comando e il file verrà generato nella directory "home" corrente. Successivamente, prova ad aprire il tuo nuovo file con qualsiasi editor integrato di Ubuntu 20.04 i.e., Lo stiamo aprendo all'interno di Nano Editor.

Esempio 01:

Il file vuoto verrà lanciato e pronto per l'uso. In primo luogo, daremo un'occhiata alle eccezioni di Python integrate. Per questo, abbiamo aggiunto il supporto Python "#!/usr/bin/python "alla prima riga e ha creato una nuova classe" test ". La classe contiene una variabile "x" con un certo valore. Dai un'occhiata al valore di "x" in quanto contiene il singolo preventivo in mezzo causerà un errore. Abbiamo creato un oggetto "t" per il test di classe usando il metodo standard. Questo oggetto di nuova realizzazione "T" è stato usato per chiamare la variabile "X" tramite il metodo "Dot". Questo è stato fatto nell'istruzione di stampa per visualizzare il valore di "x".

Il Python “Custom.Py ”File che è stato appena aggiornato con il codice, è stato eseguito nel pool di Python. Abbiamo avuto l'eccezione "Syntaxerror: EOL durante la scansione della stringa letterale" dopo aver eseguito questo codice. L'errore indica che l'errore è causato a causa del valore di "x".

Ora, daremo un'occhiata al modo più semplice per creare eccezioni personalizzate utilizzando il nostro codice Python. Quindi, inizia la stessa usanza.File PY nell'editor GNU Nano con l'esecuzione di un'istruzione "Nano" nell'area della query Shell. Aggiunto il supporto Python “#!/usr/bin/python "alla prima riga di questo file. Inizializzato una nuova classe denominata "Customexception" che è stata derivata dalla classe di eccezione integrata in quanto abbiamo implementato la classe "Eccezione" nel suo parametro. Ciò significa che la nostra classe di nuova generazione implementerà la classe di eccezione per generare un'eccezione personalizzata della nostra scelta.

La parola chiave "pass" è stata utilizzata per evitare semplicemente il codice complesso e raggiungere il passaggio successivo per generare un'eccezione. La parola chiave "sollevare" è stata utilizzata per generare un'eccezione e chiamare la classe di nuova produzione "Customexception" derivante dalla classe "eccezione". La riga di parole chiave "solleva" genererà un errore sull'esecuzione che mostra il numero di riga e la funzione principale () all'output. Salviamo prima questo codice ed esci dal file utilizzando Ctrl+S e Ctrl+X.

Durante l'esecuzione del file Python aggiornato "personalizzato.Py ", abbiamo ricevuto l'errore" __main__.Customexception ". Dato che non abbiamo usato alcuna dichiarazione nella classe, ecco perché genera un semplice output per un'eccezione senza alcun messaggio di spiegazione.

Esempio 02:

Ci immerciamo un po 'più a fondo nel concetto di creare eccezioni personalizzate in Python. Il primo esempio è stato utilizzato per visualizzare la sintassi più semplice della creazione di eccezioni personalizzate in Python. Ora creeremo eccezioni personalizzate con alcuni errori che spiegano il messaggio insieme ad alcune condizioni. Abbiamo aperto il file e dichiarato tre nuove classi: ERR, SMALLException e LargeException.La classe ERR deriva dalla classe di eccezione integrata mentre le altre due classi sono derivate dalla classe "err".

Inizializza una variabile "x" con il valore 4 e utilizzato il blocco try-ad eccezione nel codice. Il blocco "Try" sta prendendo l'input intero da un utente tramite la funzione "input" e lo salva in una variabile "N". L'istruzione "IF-Else" nidificata è qui per confrontare il valore della variabile "N" con il valore della variabile "X". Se il valore "n" è inferiore al valore "x", aumenterà Smallexception usando la parola chiave solleva insieme al nome di classe "smallexception". Se il valore "n" è maggiore del valore "x", aumenterà LargeException usando il nome di classe "LargeException". Se entrambe le condizioni non si incontrano, andremo con la visualizzazione di un semplice messaggio sulla shell usando l'istruzione di stampa i.e., "Il valore è uguale".

Dopo il blocco "prova", abbiamo usato 2 tranne parti per raccogliere i messaggi di errore in base alla condizione. Se il valore è inferiore a quelli menzionati, l'eccezione "smallexception" verrà attivata altrimenti la grandeException verrà eseguita. L'istruzione di stampa all'interno di entrambe le parti è utilizzare il messaggio di stringa in base alle loro necessità i.e., Piccolo e grande.

Durante l'esecuzione, il nostro utente ha aggiunto il valore 8 i.e., maggiore del valore x = 4. La grande Exception è stata eseguita. All'esecuzione di nuovo, l'utente ha aggiunto il piccolo valore 2 e ha eseguito lo SmalException. Finalmente, l'utente ha aggiunto lo stesso valore che viene mostrato il messaggio di successo.

Se vuoi provare ad aggiungere l'input dall'utente fino a quello desiderato, puoi utilizzare il ciclo "mentre" come abbiamo fatto sotto.

Ora, l'output sarà qualcosa di simile.

Esempio 03:

C'è un altro modo per creare eccezioni personalizzate in Python e questo è l'uso della funzione "__init__" e "__str__" di Python. Si dice che il "__init__" sia il costruttore di una classe che verrà utilizzata per inizializzare i valori. Abbiamo creato una classe di eccezione "err" che implementa la classe "eccezione" integrata in questo codice Python.

Prendendo due argomenti, inizializzerà il valore di "età" e "msg" variabile con l'oggetto chiave "sé". La funzione del costruttore "__init__" superclasse "eccezione" è stata chiamata usando la variabile "super ()" e ha superato la variabile "MSG" nel suo parametro. Il metodo "__str__" viene utilizzato per visualizzare il messaggio "errore" in base al formato stringa mostrato nella sua istruzione di ritorno.

La variabile "Age" sta prendendo il valore del numero dall'utente tramite la funzione "input" e la variabile stringa "MSG" viene inizializzata. L'istruzione "if-else" è qui per aumentare un'eccezione personalizzata quando il valore "età" è inferiore a 20 e maggiore di 50. Altrimenti, la parte "else" visualizzerà il messaggio di successo.

Nella prima esecuzione, l'utente ha aggiunto 40 e ha ricevuto il messaggio di successo i.e., 40> 20 e 40 < 50.

Nella seconda esecuzione, l'utente ha aggiunto 80 come età di input i.e., 80 è maggiore di 50. Abbiamo avuto l'eccezione nello stesso formato che abbiamo dichiarato nella funzione "__Str".

Conclusione

Si trattava di fare eccezioni personalizzate nel nostro ambiente Python ove necessario. Abbiamo discusso del modo abbastanza semplice possibile per renderlo facile per i nostri utenti i.e., Avvio di esempi dalla sintassi più elementare. Abbiamo anche scoperto l'uso delle funzioni "__init__" e "__str__" utilizzate nella creazione di eccezioni personalizzate. È stato tutto abbastanza facile da implementare.