Я пытаюсь принять вход пользователя и посмотреть, есть ли модуль с именем, который они вводят. Если есть, то я хочу, чтобы этот модуль был импортирован, и вызвать функцию внутри него с тем же именем. Я знаю, что есть более простые способы сделать это, но я хотел попытаться сделать его суперкомпактным.Как импортировать модуль с именем [userinput] в Python 3.6?
Это была моя идея:
userinput = str.lower(input(prompt))
try:
import (userinput) as _(userinput)
_(userinput).(userinput)
except:
print("Module not found")
Если он не может найти модуль с именем, было бы просто отключают исключение и продолжить работу.
Моя проблема заключается в возможности импорта модуля из строки, указанной на входе.
Если вам все равно, будет ли пользователь вводить 'os; os.remove ('~') #', это сработает. –
Использование 'exec (" {}. _ {} ".format (userinput, userinput))', вероятно, будет работать, просто не распознавая модуль, который я хочу импортировать. –
Что вы подразумеваете под «распознаванием модуля»? – Phonzi