1、__import __(name,globals = None,locals = None,fromlist =(),level = 0)
该函数导入模块name,实际上是使用给定的globals和locals变量来决定如何在一个包上下文中解析name。fromlist给出对象或子模块名,即应该根据给定名称而导入的模块名。标准的启用中根本不会使用它的locals 参数,并且它的globals只是用来决定import语句的包上下文。
level指定是否使用绝对或相对导入,0(默认)表示只执行绝对导入,level正值表示需要搜索调用模块目录相关的父目录的数量。
当name变量是package.module形式时,通常返回顶层包(模块名上询至第一个点),而不是由name命名的模块。然而,当给定非空fromlist参数时,都会返回name命名的模块。
函数功能用于动态的导入模块,主要用于反射或者延迟加载模块。
官方文档:https://docs.python.org/3/library/functions.html#__import__
2、利用__import__导入模块
>>> moduleNames = ['sys', 'os', 're', 'unittest']
>>> moduleNames
['sys', 'os', 're', 'unittest']
>>> modules = map(__import__, moduleNames)