编写一个学生类,产生一堆学生对象
要求:有一个计数器(属性),统计总共实例了多少个对象
class Student:
count = 0
def __init__(self,name,sex,age):
self.name = name
self.sex = sex
self.age = age
Student.count += 1 # 不能用self.count += 1,否则会变成私有类型,每个对象都是1
def learn(self):
print('%s is learning'%(self.name))
s1 = Student('张三','男',16)
s2 = Student('李四','男',16)
s3 = Student('灵云','女',16)
print(s1.count) # 3
print(s2.count) # 3
print(s3.count) # 3
模仿王者荣耀定义两个英雄类
要求:
- 英雄需要有昵称,攻击力,生命值等属性
- 实例化出两个英雄对象
- 英雄之间可以互殴,被殴打的一方掉血,血量小于或等于0则判定为死亡
class hero1:
def __init__(self,nickname,hp,aggr):
self.nickname = nickname
self.hp = hp
self.aggr = aggr
def attack(self,enemy):
enemy.hp -= self.aggr
class hero2:
def __init__(self,nickname,hp,aggr):
self.nickname = nickname
self.hp = hp
self.aggr = aggr
def attack(self,enemy):
enemy.hp -= self.aggr
h1 = hero1('疯二',100,20)
h2 = hero2('书生',100,10)
print(h1.hp) # 100
h2.attack(h1) # h2调用攻击技能打了h1一下
print(h1.hp) # 90