从Python3.2开始,logging.Logger.setLevel接受一个字符串级别,比如'INFO',而不是相应的整数常量.这是非常方便的,只是你不能用这种方式比较级别,而且大多数其他日志(log)记录方法只接受整数.如何使用logging软件包提供的函数将级别字符串转换为数字级别?具体地说,我想要这样的东西:

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

推荐答案

用这样的东西怎么样

$ 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
>>> 

Python-3.x相关问答推荐

Pandas groupby基于索引的连续列值相等

如何在选中项目时设置QTreeView中整行的 colored颜色 ?

如何绘制交叉验证的AUROC并找到最佳阈值?

regexp多重前瞻行为的解释

如何使用魔杖扭曲图像

将列表转换为 pandas 数据框,其中列表包含字典

Python - 根据条件附加 NULL 值

链接列未延伸到数据框的末尾

pytorch 中 mps 设备的 manual_seed

如何在 20 秒后重复使用 Pillow 在现有图像上创建新图像?

过滤阈值大小数据以使用 Pyspark 或 Python 读取

过滤查询集和Q运算符的不同值

Semaphore信号量 Python 的工作原理

从 yahoo Finance python 一次下载多只股票

两个Pandas数据框中的共同列列表

如何在 Spyder 控制台中使用变量执行 Python 3.3 脚本?

如何在 Python 中计算两个包含字符串的列表的 Jaccard 相似度?

定义 True,如果没有定义,会导致语法错误

每次启动 Google Colab 时都必须安装所需的软件包吗?

将字符串拆分为最大长度 X 的片段 - 仅在空格处拆分