Elimina gli avvisi in Python
-
Usa la funzione
filterwarnings()
per sopprimere gli avvisi in Python -
Usa l’opzione
-Wignore
per sopprimere gli avvisi in Python -
Usa la variabile d’ambiente
PYTHONWARNINGS
per sopprimere gli avvisi in Python
Gli avvisi in Python vengono generati quando vengono utilizzate classi, funzioni, parole chiave obsolete, ecc. Questi non sono come gli errori. Quando si verifica un errore in un programma, il programma termina. Ma, se ci sono avvisi nel programma, continua a funzionare.
Questo tutorial mostra come eliminare gli avvisi nei programmi in Python.
Usa la funzione filterwarnings()
per sopprimere gli avvisi in Python
Il modulo warnings
gestisce gli avvisi in Python. Possiamo mostrare gli avvisi generati dall’utente con la funzione warn(). Possiamo utilizzare la funzione filterwarnings()
per eseguire azioni su avvisi specifici.
Per esempio,
import warnings
warnings.filterwarnings(
"ignore",
".*do not.*",
)
warnings.warn("DelftStack")
warnings.warn("Do not show this message")
Produzione:
<string>:3: UserWarning: DelftStack
Come osservato, l’azione ignore
nel filtro viene attivata quando viene generato l’avviso Do not show this message warning
e viene mostrato solo l’avviso DelftStack
.
Possiamo sopprimere tutti gli avvisi semplicemente usando l’azione ignore
.
Vedi il codice qui sotto.
import warnings
warnings.filterwarnings("ignore")
warnings.warn("DelftStack")
warnings.warn("Do not show this message")
print("No Warning Shown")
Produzione:
No Warning Shown
Usa l’opzione -Wignore
per sopprimere gli avvisi in Python
L’opzione -W
aiuta a controllare se l’avviso deve essere stampato o meno. Ma l’opzione deve avere un valore specifico. Non è necessario fornire un solo valore. Possiamo offrire più di un valore all’opzione, ma l’opzione -W
prenderà in considerazione l’ultimo valore.
Per sopprimere completamente gli avvisi viene utilizzata l’opzione -Wignore
. Dobbiamo usarlo nel prompt dei comandi durante l’esecuzione del file, come mostrato di seguito.
python -W warningsexample.py
Usa la variabile d’ambiente PYTHONWARNINGS
per sopprimere gli avvisi in Python
Possiamo esportare una nuova variabile di ambiente in Python 2.7 e versioni successive. Possiamo esportare PYTHONWARNINGS
e impostarlo su Ignora per sopprimere gli avvisi generati nel programma Python.