有没有一种方法可以随机选择一个功能?

例子:

from random import choice

def foo():
    ...
def foobar():
    ...
def fudge():
    ...

random_function_selector = [foo(), foobar(), fudge()]

print(choice(random_function_selector))

上面的代码似乎执行所有3个功能,而不仅仅是随机选择的一个。正确的方法是什么?

最佳答案

from random import choice
random_function_selector = [foo, foobar, fudge]

print choice(random_function_selector)()

Python函数是一流的对象:您可以按名称引用它们,而无需调用它们,然后在以后调用它们。

在您的原始代码中,您要调用所有这三个代码,然后在结果中随机选择。在这里,我们随机选择一个函数,然后调用它。

关于python - 随机选择功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14150561/

10-09 15:10