题目要求:
与电脑进行“石头剪刀布”的游戏,电脑能自动出拳,我们能自由选择出什么。
实现代码:
import random # 出拳 punches = ['石头', '剪刀', '布'] computer_choice = random.choice(punches) user_choice = '' user_choice = input('请出拳:(石头、剪刀、布)') while user_choice not in punches: print('输入错误,请重新出拳') user_choice = input() # 亮拳 print('----战斗过程----') print('电脑出了:%s' % computer_choice) print('你出了:%s' % user_choice) # 胜负 print('----结果----') if user_choice == computer_choice: print('平局') elif (user_choice == '石头' and computer_choice == '剪刀') or (user_choice == '剪刀' and computer_choice == '布') or (user_choice == '布' and computer_choice == '石头'): print('你赢了') else: print('电脑赢了')
讯享网
通过使用index()函数简化elif语句

index()函数用于找出列表中某个元素第一次出现的索引位置。语法:list.index()
改进后的简化代码:
讯享网import random # 出拳 punches = ['石头', '剪刀', '布'] computer_choice = random.choice(punches) user_choice = '' user_choice = input('请出拳:(石头、剪刀、布)') while user_choice not in punches: print('输入错误,请重新出拳') user_choice = input() # 亮拳 print('----战斗过程----') print('电脑出了:%s' % computer_choice) print('你出了:%s' % user_choice) # 胜负 print('----结果----') if user_choice == computer_choice: print('平局') # 电脑的选择有3种,索引位置分别为:0石头, 1剪刀, 2布 # 假设在电脑索引位置上减1作为你的选择,索引位置分别为:-1布,0石头,1剪刀,此对应组合时你赢 elif user_choice == punches[punches.index(computer_choice)-1]: print('你赢了!') # elif (user_choice == '石头' and computer_choice == '剪刀') or (user_choice == '剪刀' and computer_choice == '布') or (user_choice == '布' and computer_choice == '石头'): # print('你赢了') else: print('电脑赢了')
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/23942.html