Python中logging.warn和logging.warning有什么区别?
在这个链接 http://docs.python.org/2/howto/logging.html 的示例中,使用了 warn
和 warning
这两个词。
2 个回答
44
在Python 3.3之前,它们是一样的,不过现在warn
这个功能已经不推荐使用了:
>>> import logging
>>> logging.warn is logging.warning
True
159
logging.warn
从 Python 3.3 开始就不推荐使用了,应该用 logging.warning
。
在 Python 3.3 之前,logging.warn
和 logging.warning
是同一个功能,但 logging.warn
没有被详细记录,这在 Python 的问题追踪系统中有提到过,具体可以查看这个链接 http://bugs.python.org/issue13235:
这是故意的。最初的代码(在被纳入 Python 之前)有 warn(),为了兼容旧版本才保留了这个函数。文档中提到 warning() 是因为大家应该使用这个。方法名称与相应的日志级别名称的小写形式相对应。
logging.warn()
是为了兼容旧版本而保留的,但 添加了一个不推荐使用的警告。大家应该使用 logging.warning()
。