class Boss():
    # 类的公共属性
    level=1
    
    # 类的初始化(构造方法),在类实例化时自动调用。
    def __init__(self,name,hp,sp,atk):
        self.name = name
        self.hp = hp
        self.sp = sp
        self.atk = atk
    
    # 创建类的方法,Boss被击中时HP减少
    def boss_hp_reduce(self,hero_atk):
        # 被击中时HP减少
        self.hp -= hero_atk
        print("Boss受到了%d点伤害" % hero_atk)
        print("Boss现在的生命为%d" % self.hp)
    # 攻击到hero时,heroHP减少
    def boss_attack(self,hero_hp):
        hero_hp -= self.atk
        print("Hero受到了%d点伤害" % self.atk)
        print("Hero现在的血量为%d" % hero_hp)
    # 当Boss魔力值充满时,释放大招
    def boss_sp_full(self):
        print("Boss:哈哈,我放大招了")
        print("Hero被击飞!受到了伤害")
        print("Hero阵亡了")
 # 设定hero的属性,同样可以使用类封装,但是我懒得弄了  
hero_atk = 100
hero_hp = 1000
 # 创建一个实例
boss = Boss("icedemon",,5,350)
 # 调用实例的方法
boss.boss_hp_reduce(hero_atk)
boss.boss_attack(hero_hp)
boss.boss_sp_full()
输出结果如下:

网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、小程序定制开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了新北免费建站欢迎大家使用!
>>> Boss受到了100点伤害
>>> Boss现在的生命为9900
>>> Hero受到了350点伤害
>>> Hero现在的血量为650
>>> Boss:哈哈,我放大招了
>>> Hero被击飞!受到了伤害
>>> Hero阵亡了 
class Enemy():
    def __init__(self,name,hp,atk):
        self.name = name
        self.hp = hp
        self.atk = atk
    def attack(self):
        print("%s发起攻击,hero受到了%d点伤害!" % (self.name,self.atk))
 # 继承Enemy类
class Enemy2(Enemy):
	pass
 
 # 创建实例
enemy = Enemy("毛毛虫",10,2)
enemy1 = Enemy2("小鸡",100,10)
enemy.attack()
enemy1.attack()
父类:Enemy就是Enemy2的父类,也成为基类,超类
子类:Enemy2就是Enemy的子类,也成为派生类
如果未定义时,等同于继承object,在Python中,object是所有类的父类
运行结果
>>> 毛毛虫发起攻击,hero受到了2点伤害!
>>> 小鸡发起攻击,hero受到了10点伤害!
class Enemy():
    def __init__(self):
        self.name = "蜜蜂"
        self.level = 1
    def summary(self):
        print("%s,等级为%d" % (self.name,self.level))
# 一般来说子类做了初始化就不能继承父类的属性,但可以利用super函数
class Enemy2(Enemy):
    def __init__(self):
        self.name = "蜘蛛"
        self.level = 5
        super().__init__()
# 已经初始化的子类不再继承父类的属性,已经存在的方法也是        
class Enemy3(Enemy):
    def __init__(self):
        self.name = "蝴蝶"
        self.level = 2
    def summary(self):
        print("%s,等级为%d" % (self.name,self.level))
enemy = Enemy()
enemy2 = Enemy2()
enemy3 = Enemy3()
enemy.summary()
enemy2.summary()
enemy3.summary()
输出结果:
>>> 蜜蜂,等级为1
>>> 蜜蜂,等级为1
>>> 蝴蝶,等级为2