【发布时间】:2011-07-11 11:03:31
【问题描述】:
在 ruby 中,如果我有一个对象 obj,使用一个名为 funcname 的方法,我可以使用以下语法调用该方法 obj.send(funcname)
python中是否有类似的东西。
我想这样做的原因是,我有一个 switch 语句,我在其中设置了 funcname,并且想在 switch 语句的末尾调用它。
【问题讨论】:
-
Python 没有 switch 语句。此外,在运行时生成函数名称几乎总是一个坏主意。
-
@Rafe:通常不需要它,但它本身并没有什么坏处。
-
是的,它没有,但我仍然想在 if-elif-else 循环中进行。我想我在下面得到了答案。
-
你总是可以只分配函数:“f = obj.func”,然后再调用
f(args)。 Python 的方法绑定在需要时非常适合。