Die Proben hier http://docs.python.org/2/howto/logging.html verwenden beide warnen undWas ist der Unterschied zwischen logging.warn und logging.warning in Python? Oder sind sie gleich?
Was ist der Unterschied zwischen logging.warn und logging.warning in Python? Oder sind sie gleich?
Antwort
logging.warn
seit Python veraltet ist 3.3 und Sie sollten logging.warning
verwenden.
Vor Python 3.3, logging.warn
und logging.warning
waren die gleiche Funktion, aber logging.warn
nicht dokumentiert wurde, wie http://bugs.python.org/issue13235 in einem geschlossenen Thema in dem Python Bug-Tracker bemerkt:
Die absichtlichen ist. Der ursprüngliche Code (vor der Einbindung in Python) hatte warn(), das aus Gründen der Abwärtskompatibilität beibehalten wurde. Die Dokumentation bezieht sich auf warning(), weil jeder das verwenden soll. Die Methodennamen werden dem Kleinbuchstaben des entsprechenden Logging-Level-Namens zugeordnet.
logging.warn()
wurde für Abwärtskompatibilität aber a deprecation warning was added gehalten. logging.warning()
ist, was jeder verwenden soll.
Vor Python 3.3 Warnung, sie sind die gleichen, aber warn
veraltet:
>>> import logging
>>> logging.warn is logging.warning
True
Nicht dieselbe Frage, aber einige Googler haben möglicherweise gesucht: [Python warnings.warn() vs. logging.warning()] (http://stackoverflow.com/questions/9595009/python-warnings-warn -vs-logging-warning) –