我读了一个(有点)幽默的故事,关于TSA向开发人员支付140万美元的应用程序只是输出一个随机的“左”或“右”箭头。我决定用Python自己尝试。
我想知道我是否可以使用Lambda表达式或列表理解等缩短if-else语句...有条件地打印字符串的语法简写。
import os, datetime, random
while True:
os.system('clear')
print "ENTER to continue, or type 'quit'"
print datetime.datetime.now()
print ''
i = random.randint(1,2)
if i == 1:
print 'Left'
else:
print 'Right'
print ''
prompt = raw_input("")
if prompt == 'quit':
quit()
答案 0 :(得分:5)
您可以使用更好的随机函数:
import random
print(random.choice(('Left', 'Right')))
你也可以使用这个技巧:
('Left', 'Right')[random.randint(0, 1)]
将随机索引到元组中。尽管如此,请使用choice
。
查看random的文档。
此外,TSA应用程序的津贴为$ 360k。有关潜在成本的详细信息,请参阅this hackernews comment。