Я пытаюсь построить диспетчерский следующим образом:Как передать параметры в таблице Python диспетчерское
def run_nn(type=None):
print type, 'nn'
return
def run_svm(type=None):
print type, 'svm'
return
action = {'nn' : run_nn(type=None),
'svm' : run_svm(type=None),}
Я хочу функцию, чтобы быть выполнена только при вызове с чем-то вроде:
action.get('nn',type='foo')
с ожиданием его печати:
foo nn
Но он ломается:
TypeError: get() takes no keyword arguments
Каков правильный путь?
Кроме того, две функции run_nn()
и run_svm()
были выполнены, даже не будучи вызванными. Я не хочу этого. Как я могу избежать этого?