在Python中,可以用拼凑函数名的方式来动态调用函数。这在某些场景下非常有用。
首先,我们需要知道Python中如何定义函数:
def 函数名 (参数): 函数体
然后,我们可以通过字符串拼接的方式来创建函数名:
def call_function(function_name, parameter): func = globals()[function_name] # 获取函数对象 result = func(parameter) # 调用函数 return result
通过这个函数,我们可以传入函数名和参数来动态调用函数:
def say_hello(name): print("Hello, "+name) call_function("say_hello", "World") # 输出:Hello, World
需要注意的是,如果函数不在全局命名空间中,可以使用getattr
函数获取函数对象:
class Hello: def say_hello(self, name): print("Hello, "+name) hello = Hello() func = getattr(hello, "say_hello") # 获取函数对象 result = func("World") # 调用函数
通过这种方式,我们可以根据不同的需求,动态地生成函数名来调用不同的函数。