python importlib模块

python importlib模块:

python将importlib作为标准库提供。它旨在提供python import语法和( __import __ 函数)的实现。


动态导入:

importlib模块支持传递字符串来导入模块。

我们在模块里提供了相同的接口,通过打印他们自身的名字来区分。我们分别创建了foo.pybar.py,代码如下:

def main():
	print(__name__)

现在我们仅需要使用importlib导入他们。确保该代码刚才创建的两个文件在相同目录下。

import importlib
def dynamic_import(module):
	return importlib.import_module(module)

if __name__ == "__main__":
	module = dynamic_import('foo')
	module.main()

	module2 = dynamic_import('bar')
	module2.main()

这里我们导入importlib模块,并创建了一个非常简单的函数dynamic_import。这个函数就直接调用了importlib的import_module方法,并将要导入的模块字符串传递作为参数,最后返回其结果。然后在诸如港口我们分别调用了各自的main方法,将打印出各自的name。

$ python3 importer.py 
foo
bar

也许你很少会代码这么做,不过在你需要试用字符串作为导入路径的话,那么importlib就有用途了。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值