【发布时间】:2018-12-04 11:58:31
【问题描述】:
我想将每个 Callout 存储在 def 函数中 例如:
def shooting():
print("bang bang")
def mugging():
print("money, now!")
callout = ['shooting', 'mugging']
randomthing = random.choice(callout)
print(randomthing + "()")
所以每个标注都存储在 def 函数中。然后在标注和随机事物中随机化。然后(我知道这部分是错误的)我希望它调用 mugging() 或 shooing() 但有 50/50 的机会。
【问题讨论】:
-
@jhpratt 你不需要“lambdas”。
lambda只是定义了一个函数,和def一样;不管它们是如何定义的,你都可以拥有一个函数数组。 -
只需将您的代码更改为
callout = [shooting, mugging],存储实际函数而不是它们的名称。然后,您只需执行randomthing()即可调用您选择的任何函数。