Python之Importlib与__import__详解

834次阅读
没有评论

Python之Importlib与__import__详解

Importlib模块与__import__都可以通过过字符串来导入另外一个模块,但在用法上和本质上都有很大的不同。

以一个例子为证:

以下为我的工程目录结构:

Python之Importlib与__import__详解__import__的例子:

__import__是python的一个内置方法,直接调用__import__()即可获取一个模块。

testImport.py:

mName = "demo"
module = __import__(mName)
module.getName()

此时调用的是相同目录下的demo模块,可顺利地获取这个模块,那么当不再同一个目录下呢?

修改testImport.py:

mName = "lib.test"
module = __import__(mName)
module.getName()

此时的运行结果为:

Python之Importlib与__import__详解出错提示为,当前的模块'lib'没有getName()这个方法,因此没有正确获取到test模块。

继续修改此文件:

mName = "lib.test"
module = __import__(mName,fromlist = ('test',))
module.getName()

运行结果为:

Python之Importlib与__import__详解当加上fromlist属性即可正确获取。

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:wuyou2021-07-06发表,共计523字。
新手QQ群:570568346,欢迎进群讨论 Python51学习