我有一个字符串变量,它带有函数名称,如何在Python中调用该函数?

时间:2010-11-18 11:30:54

标签: python

我有一个字符串变量,它带有不同的函数名,我有一个文件,其中包含一组与字符串内容相匹配的常用函数,如何在Python中调用该函数?

示例:

在文件1中

def function1: ...
def function2: ...
def function3: ...

在文件2中

functionname = "function2"

我需要从这个文件中调用File1中的function2

3 个答案:

答案 0 :(得分:6)

myfunction = getattr(mymodule, functionname)
myfunction()

答案 1 :(得分:1)

eval("function2")()

getattr(<module>, fname)()

答案 2 :(得分:0)

name = 'function2'

assert re.match('^(?i)[_a-z][_a-z0-9]*$', name)

eval(name)()