应用实例1—人机猜拳游戏的代码

2.建立循环用于机器和玩家猜拳,玩家猜拳从键盘输入,机器猜拳由程序自动生成

3.在循环中判断每一次猜拳中机器和玩家谁取得胜和

判断过程:

(1)当机器和玩家的猜拳相同则平局;

(2)玩家是石头且机器是剪刀 / 玩家是剪刀且机器是布 / 玩家是布且机器是石头时

玩家获胜

3)其他情况下,机器获胜

import random
def xing():
    print('-' * 80)
class Player:
    def __init__(self, action):
        self.name, self.action = '玩家', action
    def Action(self):
        if self.action == 1:
            print(f'{self.name}出拳方式为:[石头]')
        elif self.action == 2:
            print(f'{self.name}出拳方式为:[剪刀]')
        elif self.action == 3:
            print(f'{self.name}出拳方式为:[布]')
class Computer:
    def __init__(self):
        self.name = '电脑'
    def Action(self,random_num):
        if random_num == 1:
            print('电脑出拳方式为:[石头]')
        elif random_num == 2:
            print('电脑出拳方式为:[剪刀]')
        elif random_num == 3:
            print('电脑出拳方式为:[布]')
class Game:
    print('请按对应编号选择您的出拳方式:\n1 石头 2 剪刀 3 布 4 退出游戏')
    def judge(self):
        while True:
            action1 = int(input('请选择您的出拳方式:'))
            person = Player(action1)
            person.Action()
            if action1 >= 1 and action1 <= 3:
                computer = Computer()
                random_num = random.randint(1, 3)
                computer.Action(random_num)
            if action1 == 1:
                if random_num == 1:
                    print('本局平局')
                    xing()
                elif random_num == 2:
                    print('本局玩家获胜')
                    xing()
                elif random_num == 3:
                    print('本局电脑获胜')
                    xing()
            elif action1 == 2:
                if random_num == 1:
                    print('本局电脑获胜')
                    xing()
                elif random_num == 2:
                    print('本局平局')
                    xing()
                elif random_num == 3:
                    print('本局玩家获胜')
                    xing()
            elif action1 == 3:
                if random_num == 1:
                    print('本局玩家获胜')
                    xing()
                elif random_num == 2:
                    print('本局电脑获胜')
                    xing()
                elif random_num == 3:
                    print('本局平局')
                    xing()
            elif action1 == 4:
                print('游戏结束')
                xing()
                break
            else:
                print('您输入有误!')
                xing()
    xing()
c=Game()
c.judge()

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值