人机猜拳(使用两个类)

本文介绍如何使用Python编程实现一个简单的猜拳游戏。通过创建两个类,分别代表玩家和计算机,游戏逻辑清晰,易于理解。玩家和计算机通过随机选择石头、剪刀或布进行比试,最终确定胜负。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import random
class Player():
    def __init__(self,name):
        self.name=name
        self.num=0
        self.win_count=0
    def number(self):
        if self.num==1:
            print(self.name,"出拳方式为【石头】")
        elif self.num==2:
            print(self.name, "出拳方式为【剪刀】")
        elif self.num==3:
            print(self.name, "出拳方式为【布】")
    def who(self):
        print(self.name,end=' ')
        self.num=int(input("请出拳(1-3):"))
        self.number()
    def win(self):
        self.win_count+=1
class Computer():
    def __init__(self):
        self.name="电脑"
        self.num=0
        self.win_count=0
    def number(self):
        if self.num==1:
            print(self.name,"出拳方式为【石头】")
        elif self.num==2:
            print(self.name, "出拳方式为【剪刀】")
        else:
            print(self.name, "出拳方式为【布】")
    def who(self):
        self.num=random.randint(1,4)
        self.number()
    def win(self):
        self.win_count+=1
print("-----------人机猜拳------------")
name=input("请输入游戏中的名称:")
print("请根据序号选择出拳方式:")
print("1 石头\n2 剪刀\n3 布\n4 退出游戏\n")
play=Player(name)
computer=Computer()
play.who()
computer.who()
while play.num !=4:
    if (play.num==1 and computer.num==2) or (play.num==2 and computer.num==3) or(play.num==3 and computer.num==1):
        print("本局",play.name,"获胜")
        play.win()
    elif play.num==computer.num:
        print("平局")
    else:
        print("本局", computer.name, "获胜")
        computer.win()
    play.who()
    if play.num!=4:
        computer.who()
print("游戏结束,谢谢")
print(play.name + "获胜" + str(play.win_count) + "局")
print(computer.name + "获胜" + str(computer.win_count) + "局")

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值