Python猜拳游戏(五局三胜)

用Python简单实现猜拳游戏

寻思着可不可以不用过多的if和else实现这个功能

于是便想到用一个嵌套列表来表示猜拳的状态

电脑出拳时总会有3个状态(石头,剪刀和布),电脑的每一个出拳时的状态也对应着输赢的三个状态(胜利,平局和失败)

那么可以定义列表game[i]中下标为0的列表的出拳状态为石头,1为剪刀,2为布。

列表game[i][j]中的1为失败状态,2为平局,3为胜利

于是就可以通过game[i][j]的取值得到玩家的输赢状态

import random
import time
#石头 1
#剪刀 2
# 布 3
s = ["石头","剪刀","布"]
game = [[2,1,3],[3,2,1],[1,3,2]]
win = 2
num = 1
while True:
    print(f"第{num}局进行中")
    print("机器人出拳中")
    for i in range(10):
        time.sleep(0.3)
        print("#",end="")
    value = random.randint(0,2)
    gamer = int(input("\n机器人出拳完毕,玩家请出拳\n0:石头\t1:剪刀\t2布\n:"))
    print(f"电脑为{s[value]},玩家为{s[gamer]}")
    if game[value][gamer] == 1:
        print("电脑获胜")
        win = win -1
    elif game[value][gamer] == 2:
        print("平局,再来一次")
        continue
    elif game[value][gamer] == 3:
        print("玩家获胜")
        win =win +1
    num = num +1
    if num > 5:
        break
if win >=3:
    print("玩家获得最终胜利")
else:
    print("电脑获得最终胜利")


  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值