20.1. 模块和扩展包
Python 的主要扩展机制为使用保存到模块中的源代码,并通过 import
语句应用到程序中。 大多数开发人员认为属于「 Python 」的功能,实际上是作为标准库的模块集合实现的,这是也本书的主题。 虽然导入功能内置于解释器本身,但库中有几个与导入过程相关的模块。
importlib
模块公开了解释器所使用导入机制的底层实现。 它可用于在运行时动态地导入模块,而不是在启动期间使用 import
语句加载它们。 当事先不知道需要导入的模块的名称时,动态加载模块很有用,例如插件或应用程序的扩展。
Python 的包可以包含 Python 源代码,同时也可以包含其他辅助资源文件,例如模板、默认配置和图片。pkgutil
模块实现了一种便捷地访问资源文件的接口。它还可以修改包的导入路径,可以使内容安装到多个目录中,但作为同一个包的一部分出现。
zipimport
提供了一个特殊的导入器,以便我们直接从 Zip 文件中导入模块和包。例如,可以用它来加载 Python EGG 文件,同时也可以将它作为一种便捷的打包和分发应用的方式。
本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。