2016-04-26 80 views
6

我想做一个程序,将选择一个随机数,并运行相应的命令,以该号码。我在列表中列出了多个命令,如下所示是否可以运行列表中的命令?

list = [cmd1(), cmd2(), cmd3(), cmd4()] 
x = randint(0, len(list-1)) 
list[x] 

有没有什么办法可以这样运行命令? (我使用Python 3.5)

回答

11

是,函数和方法都是一流的对象,你可以给它们,它们作为参数传递,等等...:

commands = [cmd1, cmd2, cmd3, cmd4]  # omit the parenthesis (call) 
current_command = random.choice(commands) 
current_command() 
相关问题