我想知道,如何测试从条件语句中的列表中随机抽取的函数?这是一些示例代码。只需忽略代码应该打印的内容。
import random, time
def biomeLand():
print "Biome: Land"
def biomeOcean():
print "Biome: Ocean"
def biomeDesert():
print "Biome: Desert"
def biomeForest():
print "Biome: Forest"
def biomeRiver():
print "Biome: River"
biomes = [biomeLand, biomeOcean, biomeDesert, biomeForest,
biomeRiver]
def run():
while True:
selected_biome = random.choice(biomes)()
time.sleep(0.5)
run()
如果从列表中调用某个函数,我怎样才能使条件语句中的程序测试?
答案 0 :(得分:2)
也许:
def run():
while True:
selected_biome = random.choice(biomes)
selected_biome()
if selected_biome == biomeLand:
print "biomeLand Selected"
time.sleep(0.5)
run()
答案 1 :(得分:1)
您可以像任何其他变量一样匹配它们:
def foo():
print "foo"
def bar():
print "bar"
first = foo
print (first == bar) # prints "False"
print (first == foo) # prints "True"
因此,在您的示例中,您可以使用以下内容:
if selected_biome == biomeLand:
# do something