我们什么时候应该在Python项目中调用logging.basicConfig?

Oli*_* RD 5 python logging

我正在查看 pythonlogging模块来替换自定义代码,但我无法决定应该在哪里调用该basicConfig方法。

如果我开发一个名为 其具有子模块的模块,那么只在 中调用一次mymodule似乎是个好主意。basicConfigmymodule

但是,如果我(或其他人)想要mymodule在自己的模块或程序中使用并使用该logging模块,他们就无法调用自己,并且只能使用in 中basicConfig提供的选项。basicConfigmymodule

我知道有一些技巧可以解决这个问题。但是正确的使用方法是什么basicConfig,应该在哪里调用呢?

Mar*_*ers 3

在你的程序启动代码中调用它;最好由测试触发__name__ == '__main__'

if __name__ == '__main__':
    import sys

    main(sys.argv)
Run Code Online (Sandbox Code Playgroud)

并将您需要执行的所有不属于模块库的内容放入主函数中,包括日志记录配置。