如何将python日志记录级别名称转换为整数代码

新手上路,请多包涵

从 Python 3.2 开始, logging.Logger.setLevel 接受字符串级别,例如“INFO”,而不是相应的整数常量。这非常方便,除了您不能以这种方式比较数字级别,而且大多数其他日志记录方法只接受整数。如何使用 logging 包提供的函数将级别字符串转换为数字级别?具体来说,我想要这样做的东西:

 >>> logging.???('INFO') == logging.INFO
True

原文由 Mad Physicist 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 873
2 个回答

您还可以使用:

 import logging
logging.getLevelName('INFO')

原文由 ronkov 发布,翻译遵循 CC BY-SA 4.0 许可协议

使用类似的东西怎么样

$ python
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import logging
>>> getattr(logging, 'INFO')
20
>>> getattr(logging, 'DEBUG')
10
>>> getattr(logging, 'ERROR')
40
>>>

原文由 Vinay Sajip 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题