python 猫狗大战有关代码

下面是一些简单的参考:

首先我们去定义一个猫类

class Cat:

    role = 'cat' #猫的角色属性都是猫

然后我们再去构造方法初始化猫

    def __init__(self, name, breed, aggressivity, life_value):

        self.name = name #每一只猫都有自己的昵称

        self.breed = breed #每一只猫都有自己的品种

        self.aggressivity = aggressivity #每一只猫都有自己的攻击力

        self.life_value = life_value #每一只猫都有自己的生命值

之后去定义猫攻击狗   

 def attack(self,dog):

        dog.life_value -= self.aggressivity #狗的生命值会根据猫的攻击力而下降

再去定义增长生命值   

def eat(self):

        self.life_value += 50

这个是定义判断是否死亡的方法

    def die(self):

        if self.life_value <= 0: #如果生命值小于等于0表示已被对方杀死

            print(self.name,'已被杀死!')

        else:

            print(self.name,'的生命值还有',self.life_value)

有了猫就去定义一个狗类,之后方法和猫类似

class Dog:  

    role = 'dog' #狗的角色属性都是狗

去定义增长狗生命值的方法   

 def eat(self):

        self.life_value += 30

#定义判断是否死亡的方法   

 def die(self):

        if self.life_value <= 0:  #如果生命值小于等于0表示已被对方杀死

            print(self.name,'已被杀死!')

        else:

            print(self.name,'的生命值还有',self.life_value)

然后就大差不差了

这是主程序的一部分:

#创建实例

cat_1 = Cat('Mily','波斯猫',30,1500) #创造了一只实实在在的猫

dog_1 = Dog('Lucky','哈士奇',50,900) #创造了一只实实在在的狗

cat_1.die() #输出猫的当前状态

dog_1.die() #输出狗的当前状态

print('------开始战斗-----')

cat_1.attack(dog_1) #猫攻击狗一次

dog_1.bite(cat_1) #狗攻击猫一次

cat_1.die() #输出猫的当前状态

dog_1.die() #输出狗的当前状态

for i in range(29): #循环实现,猫攻击狗29次

    cat_1.attack(dog_1)

dog_1.die() #输出狗的当前状态

cat_1.eat() #猫吃东西一次

cat_1.die() #输出猫的当前状态

这就是猫狗大战所需要的构建定义,接下来你们可以去尝试一下去构建吧

猜你喜欢

转载自blog.csdn.net/endofdestruction/article/details/131999638
今日推荐