如何通过名称获取函数对象?

时间:2012-06-02 08:03:07

标签: python function

我确实想要处理一个带有用户指定参数的命令。 我想过:

self.urlRegexFunc = "endswith"
self.urlRegex = ".mp3"
exec('b = attr[1].%s("%s")' % (self.urlRegexFunc, self.urlRegex)) # attr[1] is string
if b:
    pass # Do Something

但我明白了:

  

SyntaxError:函数'start_a'中不允许使用非限定exec它包含带有自由变量的嵌套函数

我该怎么办?

1 个答案:

答案 0 :(得分:2)

您正在寻找getattr()