下面是一些简单的参考:
首先我们去定义一个猫类
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() #输出猫的当前状态
这就是猫狗大战所需要的构建定义,接下来你们可以去尝试一下去构建吧