用Python写个石头剪刀布的小游戏

import random  # 导入随机数函数

print('石头剪刀布小游戏,五局三胜制')
count1 = 0  # 电脑获胜次数
count2 = 0  # 玩家获胜次数
num = 5  # 计数
while num > 0:
    pc = random.randint(0, 2)  # 让电脑随机产生0,1,2 三个数中的一个
    player = int(input('请输入你的选择(0-石头,1-剪刀,2-布):'))
    # 判断电脑获胜的条件
    if pc == 0 and player == 1 or pc == 1 and player == 2 or pc == 2 and player == 0:
        count1 += 1
        print(f'玩家选择的是,{player}电脑的选择是,{pc}')
        print('本轮比赛电脑赢了')
    # 判断玩家获胜的条件
    elif player == 0 and pc == 1 or player == 1 and pc == 2 or player == 2 and pc == 0:
        count2 += 1
        print(f'你选择的是,{player}电脑的选择是,{pc}')
        print('本轮比赛玩家赢了')
    else:
        print(f'玩家选择的是,{player}电脑的选择是,{pc}')
        print('本轮比赛是平局')
    num -= 1
# 统计和判断获胜的一方并输出结果

print('='*10,'最后公布比赛结果如下:','='*10)
if count2 > count1:
    print(f'玩家赢了 {count2}  次,电脑赢了 {count1} 次 \n-比赛结果是:玩家获胜')
elif count2 < count1:
    print(f'玩家赢了 {count2}  次,电脑赢了 {count1} 次 \n-比赛结果是:电脑获胜')
else:
    print(f'玩家赢了 {count2}  次,电脑赢了 {count1} 次 \n-比赛结果是平局')

改进了一下游戏规则,只要是平局,回合就加1次,直到决出胜负,而且只要有一方获胜次数达到3次就判定胜利。代码如下:

import random  # 导入随机数函数

print('石头剪刀布小游戏,五局三胜制')
count1 = 0  # 电脑获胜次数
count2 = 0  # 玩家获胜次数
num = 5  # 计数
while num > 0:
    pc = random.randint(0, 2)  # 让电脑随机产生0,1,2 三个数中的一个
    player = int(input('请输入你的选择(0-石头,1-剪刀,2-布):'))
    # 判断电脑获胜的条件
    if pc == 0 and player == 1 or pc == 1 and player == 2 or pc == 2 and player == 0:
        count1 += 1
        print(f'玩家选择的是,{player}电脑的选择是,{pc}')
        print('本轮比赛电脑赢了')
        if count1 == 3:
            break
    # 判断玩家获胜的条件
    elif player == 0 and pc == 1 or player == 1 and pc == 2 or player == 2 and pc == 0:
        count2 += 1
        print(f'你选择的是,{player}电脑的选择是,{pc}')
        print('本轮比赛玩家赢了')
        if count2 == 3:
            break
    else:
        print(f'玩家选择的是,{player}电脑的选择是,{pc}')
        print('本轮比赛是平局')  # 只要是平局,比赛就多加一轮
        num += 1
    num -= 1
# 统计和判断获胜的一方并输出结果

print('=' * 10, '最后公布比赛结果如下:', '=' * 10)
# 只要有一方的次数达到3次就获胜
if count2 == 3:
    print(f'玩家赢了 {count2}  次,电脑赢了 {count1} 次 \n-比赛结果是:玩家获胜')
elif count1 == 3:
    print(f'玩家赢了 {count2}  次,电脑赢了 {count1} 次 \n-比赛结果是:电脑获胜')
# else:
#     print(f'玩家赢了 {count2}  次,电脑赢了 {count1} 次 \n-比赛结果是平局')

 

  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值