首页 > 解决方案 > 从函数列表中获取随机函数并调用所选函数

问题描述

我正在尝试创建一个可以调用的函数,它从函数列表中选择一个随机函数并将所选函数调用为行动。这甚至可能吗?这是我尝试过的。结果什么也没发生。

import random

def ran1(): 
    print("test1")

def ran2(): 
    print("test2") 

def ran3(): 
    print("test3") 

def ran4(): 
    print("test4")

list_functions = [ran1,ran2,ran3,ran4]

def ran_choice():
    random.choice(list_functions)

ran_choice()

标签: pythonlistfunctionrandom

解决方案


你的逻辑很好。您只需要调用您选择的函数ran_choice

def ran_choice():
    random.choice(list_functions)()

虽然,它可能更容易阅读为:

def ran_choice():
    chosen_fn = random.choice(list_functions)
    chosen_fn()

推荐阅读