Python运行中动态导入模块
Feb 21, 2016有时候,需要在运行Python的过程中根据动态参数来导入具体的模块,这可以通过importlib模块来实现。
importlib模块只有一个方法import_module(),它可以接受一个参数或者两个参数,一个参数,说明通过绝对路径来导入模块,如果是两个参数,说明通过相对路径来导入模块,这时第一个参数为相对路径,第二个参数为基准路径。
例如pkg包下面有一个模块mod,还有一个子包subpkg,目录结构如下:123456/pkg __init__.py mod.py /subpkg __init__.py ...
那么通过绝对路径到导入模块的代码如下所示:1importlib.import_module("pkg.mod")
而通过相对路径导入模块的代码如下:1importlib.import_module("..mod", "pkg.subpkg")