Руководство по стилю PEP для импорта из модуля с очень вложенной структурой модуля - PullRequest
0 голосов
/ 30 ноября 2018

Предположим, мне нужна функция foo и что foo точно так же определено в library.lgmodule.medmodule.smmodule.nichemodule.utils.something.else

Есть ли более чистый способ написать:

from library.lgmodule.medmodule.smmodule.nichemodule.utils.something.else import foo

напримерсродни многолинейному import:

from module.utiles import (foo, bar, baz, ban, ana,
    some, more, funcs, etc)

1 Ответ

0 голосов
/ 30 ноября 2018

Вы можете использовать importlib.import_module и использовать форматирование строк.Например:

from importlib import import_module

path = '.'join[
    'library',
    'lgmodule',
    'medmodule',
    'smmodule',
    'nichemodule',
    'utils',
    'something',
    'else'
]
foo = import_module('{}.foo'.format(path)
...