Динамически импортировать подмодули в python
Предположим, я предоставляю модуль в командной строке и хочу импортировать его, используя модуль "imp":
$ foo.py mod.a.b.c
Как правильно это сделать?
Разделить "mod.abc" и добавить каждый путь? Поведение "imp" не похоже на "import".
1 ответ
Задан путь к модулю в виде строки (modulename
), вы можете импортировать его с
module = __import__(modulename,fromlist='.')
Обратите внимание, что __import__('mod.a.b.c')
возвращает посылку mod
, в то время как __import__('mod.a.b.c',fromlist='.')
возвращает модуль mod.a.b.c
,