Я пытаюсь использовать функциональное программирование для создания словаря, содержащего ключ и функцию для выполнения:
myDict={}
myItems=("P1","P2","P3",...."Pn")
def myMain(key):
def ExecP1():
pass
def ExecP2():
pass
def ExecP3():
pass
...
def ExecPn():
pass
Теперь я видел код, используемый для поиска определенных функций в модуле, и мне нужно сделать что-то вроде этого:
for myitem in myItems:
myDict[myitem] = ??? #to dynamically find the corresponding function
Итак, мой вопрос: как мне составить список всех Exec
функций, а затем назначить их желаемому элементу с помощью словаря? так что в конце у меня будет myDict["P1"]() #this will call ExecP1()
Моя настоящая проблема в том, что у меня есть тонны этих элементов, и я создаю библиотеку, которая будет их обрабатывать, поэтому конечному пользователю нужно только вызвать myMain("P1")
Я думаю об использовании модуля проверки, но не знаю, как это сделать.
Моя причина избегать:
def ExecPn():
pass
myDict["Pn"]=ExecPn
заключается в том, что я должен защищать код, поскольку я использую его для создания сценариев в моем приложении.