在Python中,需要先导入模块,然后才能对其进行访问。import logging
仅导入日志记录模块。碰巧这logging
是一个带有子模块的软件包,但是那些子模块仍然不会自动加载。因此,您需要先显式导入,logging.handlers
然后才能访问它。
如果您想知道为什么有时看起来不需要多余的导入:某些软件包在导入时会导入其子模块的某些或全部- 只需在__init__.py
文件中进行这些导入即可。在其他情况下,可能是您导入了其他内容,也导入了logging.handlers
。导入哪段代码都没有关系。只要流程中的某些内容 在您logging.handlers
访问之前就导入了,它就会在那里。有时看起来像包的模块实际上不是一个与os
and类似的模块os.path
。os
不是软件包,它只是导入正确的其他模块(针对您的平台)并调用它path
,以便您可以按进行访问os.path
。