python编写程序模拟猫狗大战

Python课堂老师布置的小练习,还不太熟练,有不足之处,还希望各路大神多指点指点

print('='*20,'欢迎来到猫狗大战','='*20)

class Animals :
    def __init__(self,name,breed,atk,life):
        self.name = name
        self.breed = breed
        self.atk = atk
        self.life = life

    def eat(self):
        self.life += 10

    def show(self):
        print('Name:',self.name)
        print('Breed:',self.breed)
        print('Atk:',self.atk)
        print('Life:',self.life)

class Cat(Animals):
    def __init__(self,name,breed,atk,life):
        super(Cat, self).__init__(name,breed,atk,life)  # 继承父类属性

    def attack(self, enemy):
        enemy.life -= self.atk
        if enemy.life <= 0 :
            print(f'{self.name} Win!')
        else:
            print(f'{enemy.name}承受了{self.name}的{self.atk}攻击力,还剩下{enemy.life}点生命力')

    def eat(self):
        super(Cat, self).eat()  # 继承父类方法

    def show(self):
        super(Cat, self).show() # 继承父类方法


class Dog(Animals):
    def __init__(self, name, breed, atk, life):
        super(Dog, self).__init__(name, breed, atk, life)

    def attack(self, enemy):
        enemy.life -= self.atk
        if enemy.life <= 0 :
            print(f'{self.name} Win!')
        else:
            print(f'{enemy.name}承受了{self.name}的{self.atk}攻击力,还剩下{enemy.life}点生命力')


    def eat(self):
        super(Dog, self).eat()

    def show(self):
        super(Dog, self).show()

if __name__ == '__main__' :
    cat1 = Cat('咪咪','加菲猫',10,50)
    dog1 = Dog('小黑','狼狗',15,60)
    print('='*20,'欢迎来到猫狗大战','='*20)
    while True :
        print('请选择你要进行的操作:')
        print('\t1.查询猫狗属性')
        print('\t2.猫咪攻击狗狗')
        print('\t3.狗狗攻击猫咪')
        print('\t4.吃东西')
        print('\t5.退出')
        print('=' * 60)
        user_choose = (input('请输入你要进行的操作[1-5]:'))
        print('=' * 60)
        if user_choose == '1':
            cat1.show()
            print('='*60)
            dog1.show()
            print('='*60)

        elif user_choose == '2':
            cat1.attack(dog1)

        elif user_choose == '3':
            dog1.attack(cat1)

        elif user_choose == '4':
            choose = input('给猫咪加血请输入C,给狗狗加血请输入D:')
            if choose =='C' :
                cat1.eat()
            elif choose == 'D' :
                dog1.eat()
            else :
                print('你的输入有误,请重新输入!!')

        elif user_choose == '5':
            print('退出系统!!')
            input('按enter键退出!!!')
            break

        else:
            print('你的输入有误!请重新输入!')
        print('=' * 60)

你可能感兴趣的:(python)