import logging
logger = logging.getLogger(__name__)
如何使其他模块可以访问此实例?
只需将变量实例导入到您打算使用它的命名空间中:
module.A
import logging
logger = logging.getLogger(__name__)
module.B
from module.A import logger
变量实例
logger
现在可在命名空间 module.B
中使用。
您将拥有引用同一对象并可用于新命名空间的变量实例 iff 您不需要 取消绑定 [python-docs] 此变量实例从它所引用的内容或 (重新)绑定[python-docs]它到另一个对象。
我对您在特定用例中应该注意的工程细节发表了评论。
使用
builtins
做类似的事情
import builtins
import logging
_logger = logging.getLogger(__name__)
builtins.LOGGER = _logger
现在您可以在整个项目中将
_logger
作为名称为 LOGGER
的内置类型对象进行访问