Wie zu deaktivieren python-Warnungen
Ich arbeite mit code, wirft eine Menge (für mich im moment) nutzlose Warnungen der Warnungen
Bibliothek. Lesen (/Scannen) die Unterlagen, die ich nur einen Weg gefunden,zum deaktivieren der Warnungen für die einzelnen Funktionen. Aber ich will nicht zu ändern, so viel von dem code.
Ist es vielleicht eine fahne wie python -no-warning foo.py
?
Was würden Sie empfehlen?
Sie sind völlig richtig, ich gab dir ein +1 für deinen Kommentar, aber es gibt wie ich schrieb, "im Augenblick" nutzlos für mich.
Ich in der Regel Zustimmen, aber es gibt legitime Fälle für das ignorieren von Warnungen. Bekomme ich mehrere von diesen aus mit der gültige Xpath-syntax in defusedxml:
deaktivieren Sie bestimmte Warnungen: stackoverflow.com/questions/9134795/...
Ich in der Regel Zustimmen, aber es gibt legitime Fälle für das ignorieren von Warnungen. Bekomme ich mehrere von diesen aus mit der gültige Xpath-syntax in defusedxml:
FutureWarning: This search is broken in 1.3 and earlier, and will be fixed in a future version. If you rely on the current behaviour, change it to [this other thing]
. Ich würde eher die Warnungen ignorieren jetzt und warten, bis es leise fest, als schreiben unnötig hässlichen code nur zu vermeiden, eine Harmlose Warnung.deaktivieren Sie bestimmte Warnungen: stackoverflow.com/questions/9134795/...
InformationsquelleAutor Framester | 2013-01-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es die Option-W.
python -W ignore foo.py
InformationsquelleAutor Pavel Anossov
Haben Sie Blick auf die Warnmeldungen unterdrücken - Abschnitt der python-docs?
Ich nicht dulden es, aber Sie konnte nur unterdrückt alle Warnungen:
Ex:
Ich zählte die andere option mit einem Beispiel... ich mag es nicht so viel (für Grund gab ich im vorherigen Kommentar), aber zumindest jetzt haben Sie die tools.
Wenn Sie nur erwarten, zu fangen Warnungen aus einer bestimmten Kategorie, können Sie es mithilfe der
category
argument:warnings.filterwarnings("ignore", category=DeprecationWarning)
Dies ist nützlich für mich in diesem Fall, weil html5lib spuckt lxml Warnungen, auch wenn es nicht Parsen von xml. Dank
Es ist auch ein nützlicher parameter für die
warnings.filterwarnings
Funktion:module
. Es ermöglicht Ihnen, zu ignorieren Warnungen von bestimmten Modul.InformationsquelleAutor Mike
Können Sie auch eine Umgebungsvariable definieren (neues feature in 2010 - also python 2.7)
Prüfung wie folgt: Standard
Ignorieren Warnungen
tox
hinzufügenPYTHONWARNINGS=ignore
zusetenv
macht Ausgabe weniger schmutzig.InformationsquelleAutor Holger Bille
Dies ist eine alte Frage, aber es gibt einige neuere Leitlinien in PEP 565 , um schalten Sie alle Warnungen, wenn Sie schreiben eine python-Anwendung, die Sie verwenden sollten:
Der Grund, warum dies empfohlen wird, ist, dass es deaktiviert alle Warnungen standardmäßig aber entscheidend sind erlaubt, Sie werden wieder eingeschaltet, die über
python -W
auf der Kommandozeile oderPYTHONWARNINGS
.InformationsquelleAutor Chris_Rands
Wenn Sie nicht wollen, etwas kompliziert, dann:
warnings.filterwarnings("default", category=FutureWarning)
InformationsquelleAutor Abhishek Jain
Warnungen Ausgabe über stderr und die einfache Lösung ist die append '2> /dev/null "' auf dem CLI. das macht sehr viel Sinn, zu viele Benutzer, wie beispielsweise diejenigen, die mit centos 6, die fest mit python 2.6 Abhängigkeiten (wie yum) und der verschiedenen Module sind gedrängt an den Rand des Aussterbens in Ihre Berichterstattung.
dies gilt insbesondere für die Kryptographie mit SNI et cetera. kann man update 2.6 für HTTPS handling mit dem proc-an:
https://urllib3.readthedocs.io/en/latest/user-guide.html#ssl-py2
die Warnung ist noch immer vorhanden, aber alles, was Sie wollen ist zurück-portiert. der re-direct von stderr lassen Sie mit sauberen terminal/shell stdout ausgegeben, obwohl der Inhalt sich nicht ändert.
Reaktion auf FriendFX. Satz eins (1) reagiert direkt auf das problem mit einer universal-Lösung. Satz zwei (2) berücksichtigt die zitierte Anker wieder deaktivieren 'Warnungen', die python-2.6 spezifisch und stellt fest, dass der RHEL - /centos-6-Benutzer können nicht direkt tun, ohne 2.6. obwohl keine spezifischen Warnungen wurden zitiert, para zwei (2) Antworten die 2.6 Frage, die ich am häufigsten wieder die kurzen-kommen in den Kryptographie-Modul und wie kann man "modernisieren" (d.h., aktualisieren, portieren, fix) - python-HTTPS/TLS-Leistung. ABS drei (3) lediglich erklärt, das Ergebnis der Verwendung der re-direct und Aktualisierung des Moduls/Abhängigkeiten.
InformationsquelleAutor jvp
Wenn Sie wissen, was sind die nutzlosen Warnungen, die Sie in der Regel auftreten, können Sie Sie filtern, indem angezeigt.
InformationsquelleAutor user3226167
Können Sie diesen code verwenden an der Spitze der main.py:
InformationsquelleAutor ykpgrr