【问题标题】:How to fix pylint logging-not-lazy? [duplicate]如何修复 pylint logging-not-lazy? [复制]
【发布时间】:2015-05-22 17:39:22
【问题描述】:

我正在使用探矿者来检查我的代码。 Pylint 返回了一个关于我的调试消息的logging-not-lazy 警告。

Line: 31
  pylint: logging-not-lazy / Specify string format arguments as logging function parameters (col 16)   Line: 42
  pylint: logging-not-lazy / Specify string format arguments as logging function parameters (col 12)

我的代码是:

logging.debug("detect mimetypes faild because %s" % e )

如何在 pylint 中修复 logging-not-lazy

【问题讨论】:

    标签: python pylint


    【解决方案1】:

    这意味着,您应该将代码重写为:

    logging.debug("detect mimetypes faild because %s", e)
    

    根据https://docs.python.org/2/library/logging.html

    Logger.debug(msg, *args, **kwargs)

    ... 在此记录器上记录一条带有 DEBUG 级别的消息。 msg 是消息格式字符串,args 是使用字符串格式化运算符合并到 msg 中的参数。(注意这意味着您可以在格式字符串中使用关键字,以及一个字典参数。)...

    【讨论】:

    • 调试日志首选这种格式有什么原因吗?
    • 它是首选,因为它很懒。如果级别未设置为DEBUG,则日志库根本不会格式化字符串。这意味着它不需要做额外的工作,除非用户真的想看到这些日志消息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-11
    • 1970-01-01
    • 1970-01-01
    • 2015-10-13
    • 2019-02-16
    相关资源
    最近更新 更多