如何在python中随机选择函数内的函数

L P*_*L P 0 python

我有两个函数执行不同的操作,但我希望它们在另一个函数中随机调用.

例如.

def func1(): do something
def funct2(): do something else

def func3(): select funct1() or funct2() randomly
Run Code Online (Sandbox Code Playgroud)

Suk*_*lra 6

收集列表中的函数并随机选择其中一个(使用random.choice)并调用它!

>>> def f2():
        return 2

>>> def f1():
        return 1

>>> fns = [f1, f2]
>>> from random import choice
>>> choice(fns)()
1
>>> choice(fns)()
2
Run Code Online (Sandbox Code Playgroud)

这是可能的,因为Python函数是第一类对象.阅读Python中第一类对象的链接.