Python提供了importlib包作为标准库的一部分。
目的就是提供Python中import语句的实现(以及__import__函数)。
另外,importlib允许程序员创建他们自定义的对象,可用于引入过程(也称为importer)。
这个模块有些复杂,因此我们在这篇博文中主要讨论以下几个主题:
- 动态引入
- 检查模块是否可以被引入
- 引入源文件自身
- 第三方模块 import_from_github_com
一、动态导入
importlib模块支持传递字符串来导入模块。
我们先来创建一些简单模块一遍演示。我们在模块里提供了相同接口,通过打印它们自身名字来区分。我们分别创建了foo.py和bar.py,代码如下:
函数和类
- import_module()
- reload()
- machinery()
- invalidate_caches()
- find_loader()
- util()
- _bootstrap()
- _import_()
- _bootstrap_external()
- abc()
参考资料:
Python importlib模块,常用函数和类
介绍importlib
[248]python中标准模块importlib详解