函数是Python中的一流对象,因此您可以使用字典进行分派。例如,if
foo和
bar是函数,并且
dispatcheris像这样的字典。
dispatcher = {'foo': foo, 'bar': bar}请注意,值are
foo和
barare是函数对象,而NOT
foo()和
bar()。
打电话
foo,你可以做
dispatcher['foo']()
编辑:如果您要运行列表中存储的 多个 功能,则可以执行以下操作。
dispatcher = {'foobar': [foo, bar], 'bazcat': [baz, cat]}def fire_all(func_list): for f in func_list: f()fire_all(dispatcher['foobar'])


