Что у меня есть:
from my_package import my_module as the_best_module
Что я хотел бы сделать:
{n: {"m": exec(n)} for n in alias_string_list}
Однако я хотел бы сделать это без использования exe c. Я хотел бы взять строку «the_best_module» и получить объект модуля the_best_module, чтобы я мог экспортировать словарь этих объектов и использовать их в другой части проекта.
Это то, что мне удалось:
{ n: {"m": getattr(sys.modules[__name__], m, None)}, for m in alias_string_list}
Я получаю модуль, используя name и передаю m, возвращая None, если атрибут не найден.