Pitone

Tutorial sul traceback di Python

Tutorial sul traceback di Python
Una volta creata un'eccezione durante l'esecuzione del codice, Python visualizza un traceback. Un traceback sembra essere un report in Python che include le chiamate di funzione effettuate in un determinato punto del codice, i.e., una volta che hai un errore, si suggerisce di rilasciarlo all'indietro (traceback). Il traceback può fornire dettagli su cosa è successo con il codice se il codice riceve un errore. Tali traceback possono sembrare un po' estenuanti, ma possono essere davvero utili finché non li sposti e vedi cosa sta cercando di insegnarti. Ci sono molti dati nel traceback di Python che ti aiuteranno ad analizzare e correggere la causa del problema generato nel tuo codice.

Interpreta il traceback:

Esaminare alcuni traceback può dare una migliore interpretazione della conoscenza che forniscono per consentirti di trarne qualcosa. Diamo un'occhiata all'interpretazione di come un'eccezione di base può essere traceback. Ecco un esempio di un semplice codice che genera un errore di traceback nell'esecuzione di Spyder (Python 3).

Di seguito è riportata l'immagine di traceback dell'errore. La prima riga mostra la posizione del file. Ecco alcune specifiche per tutte le linee che utilizzano i colori.

Bianca: Traceback (l'ultima chiamata più recente) è un'istruzione di traceback. D'altra parte, la parte bianca dell'ultima riga mostra le relative informazioni sull'errore.

Verde: Dire un nome file e una posizione ha un errore.

Blu: Mostra il numero di riga di un file in cui si è verificato l'errore.

Giallo: Visualizza la riga effettiva in cui è apparsa un'eccezione.

Rosso: Tipo di errore.

Ecco alcuni errori importanti nel traceback:

NomeErrore
Errore indice
KeyError
TypeError
valueError
ImportError /ModuleNotFound

Errore nome:
Ogni volta che vuoi interpretare una variabile che non è stata specificata nel codice, appare NameError. Ecco un semplice esempio di traceback NameError. Abbiamo una variabile 'numero' definito con un certo valore, mentre in Stampa dichiarazione, abbiamo stampato 'intorpidito', che non è definito da nessuna parte nel codice. Eseguiamo questo codice e controlliamo cosa succede.

Puoi vedere che il traceback NameError si è verificato poiché non abbiamo definito la variabile 'numb', quindi come può essere stampata. Ecco perché questo programma mostra il NameError ed elaborandolo con informazioni extra all'ultima riga con testo bianco e rosso. Il testo giallo mostra il codice esatto in cui si verifica l'errore.

Errore di indice:

Viene prodotto un IndexError quando una serie fuori portata è definita nel codice. Abbiamo definito a elenco di nome 'nuovo' avendo 5 indici con alcuni valori dentro. Dopodiché, dobbiamo indicare il comando print per emettere il valore in indice numero 9.

Quando eseguiamo questo codice, genererà IndexError definendo l'indice fuori intervallo. Poiché abbiamo definito un elenco di 5 indici, quindi il numero di indice stampato, che è 9, non è in grado di accedere perché non è nel nostro intervallo.

Errore chiave:

Python genera un errore chiave quando si tenta di raggiungere il chiave che è non definito o mappato, specialmente da a dizionario. È più simile a un IndexError. Quindi, diamo un'occhiata a un semplice esempio di un dizionario chiamato 'casuale' con due chiavi definite in essa con alcuni valori assegnati a queste chiavi. Nella riga successiva, abbiamo stampato la chiave denominata 'UN' nella dichiarazione di stampa.

Oh! Abbiamo il traceback KeyError. Ciò è dovuto alla chiave errata fornita nell'istruzione print, che non è definita nel dizionario. Si può commettere un errore fornendo una chiave con lettere maiuscole mentre nel dizionario è definita una chiave con lettere minuscole.

Errore di tipo:

TypeError è definito come un'eccezione che si verifica quando un'operazione o un metodo è stato imbrattato su un tipo inadatto di un'entità o variabile. Abbiamo un esempio di una variabile semplice che prende due valori mentre questa stringa aggiunge entrambi i valori. Il primo valore è un tipo stringa e l'altro è un tipo intero. L'istruzione print sta stampando il risultato dell'addizione.

Quando questo codice viene eseguito, solleva l'eccezione. Questa eccezione riguarda il tipo sbagliato di oggetto concatenato. Sta elaborando che non puoi aggiungere una variabile di tipo stringa con una variabile di tipo intero.

Errore valore:

Value Error è definito come un'eccezione che si verifica solo quando alcuni only metodo integrato prende il argomento di tipo giusto ma il valore sbagliato dentro. Diamo un'occhiata a un piccolo esempio. Stiamo adottando un metodo integrato di intero() con un valore di stringa in un'istruzione print.

Quando esegui questo codice di una riga, genererà un ValueError perché stiamo usando una funzione di tipo intero dandogli un valore stringa da eseguire. Ecco perché mostrerà che la funzione int() contiene un valore non valido.

D'altra parte, se gli dai un valore frazionario, lo convertirà in un valore intero.

Questo codice restituisce 11 perché prende solo la parte intera mentre la parte decimale viene ignorata completamente.

Errore di importazione/modulo non trovato:

A volte devi importare alcuni pacchetti o moduli nel tuo codice Python per utilizzare funzionalità speciali attraverso di loro. Troverai un traceback ImportError quando è in qualche modo errato su un'istruzione Import nel codice. Questo errore di traceback si verifica quando sei incapace per trova il modulo specifico o qualcosa all'interno del pacchetto. Qui abbiamo importato due moduli, 'pip' e 'Giava', nel nostro codice.

Durante l'esecuzione di questo codice verrà restituito il traceback ModuleNotFoundError. Questo perché il modulo importato 'java' non è supportato dalla libreria python. D'altra parte, non fa eccezione all'importazione del modulo 'pip' perché è un modulo supportato da Python.

Conclusione:

Il traceback Python fornisce una conoscenza eccellente che ti aiuterà a capire cosa non va nel codice. Che tu lo stia facendo per la prima volta o semplicemente non capisci cosa sta facendo, la generazione di traceback può essere un po' scoraggiante. Per diventare un programmatore Python più forte, è importante imparare quali dettagli fornisce un traceback Python.

Controlla e gestisci il movimento del mouse tra più monitor in Windows 10
Gestore mouse con doppio display ti consente di controllare e configurare il movimento del mouse tra più monitor, rallentando i suoi movimenti vicino ...
WinMouse ti consente di personalizzare e migliorare il movimento del puntatore del mouse su PC Windows
Se vuoi migliorare le funzioni predefinite del puntatore del mouse, usa freeware WinMouse. Aggiunge più funzionalità per aiutarti a ottenere il massim...
Il tasto sinistro del mouse non funziona su Windows 10
Se stai utilizzando un mouse dedicato con il tuo laptop o computer desktop ma il il tasto sinistro del mouse non funziona su Windows 10/8/7 per qualch...