函数调用的模式匹配参数 Python?
Pattern match parameters to function calls Python?
我正在编写一个 python 函数,该函数根据它接受的参数调用一个函数。它看起来像这样:
def match(parameter):
if parameter == 'fun1':
fun1()
elif parameter == 'fun2':
fun2()
elif parameter == 'fun3':
fun3()
然后在 match
函数下定义所有被调用的函数。有没有更有效的方法来组织 match
函数?我找不到任何关于函数模式匹配的信息,但是某种数据结构可以工作吗?
感谢您的帮助。
您可以创建一个字典来存储函数和参数值之间的映射以调用它。
例如:
def fun1():
print("I am fun1")
def fun2():
print("I am fun2")
funcs_mapping = {"fun1":fun1, "fun2":fun2}
def match(parameter):
if parameter in funcs_mapping:
funcs_mapping[parameter]()
我正在编写一个 python 函数,该函数根据它接受的参数调用一个函数。它看起来像这样:
def match(parameter):
if parameter == 'fun1':
fun1()
elif parameter == 'fun2':
fun2()
elif parameter == 'fun3':
fun3()
然后在 match
函数下定义所有被调用的函数。有没有更有效的方法来组织 match
函数?我找不到任何关于函数模式匹配的信息,但是某种数据结构可以工作吗?
感谢您的帮助。
您可以创建一个字典来存储函数和参数值之间的映射以调用它。
例如:
def fun1():
print("I am fun1")
def fun2():
print("I am fun2")
funcs_mapping = {"fun1":fun1, "fun2":fun2}
def match(parameter):
if parameter in funcs_mapping:
funcs_mapping[parameter]()