• Python【类编程】


    一.类的初识

       类和过程相对,面向过程和面向对象两种都是编程语言的两方面,Python是一种面向对象的编程语言

    分为继承  多态和封装三种部分:

    #创建类
    class Human(object):
        """  这里是文档注释  """
    
        type = "人类"   #类变量
    
        def __init__(self,name,age):   #初始化方法
    
            self.name = name   #实例化属性(变量)
    
            self.age = age
    
        def eat(self):  #普通方法
    
            print("我饿了我要吃:",self.name)
    
        def sleep(self):
    
            print("我要睡觉!")
    
    
    class China(Human):  #China继承Human类
    
        def make_Money(self):  #在Human类的基础上添加方法
    
            print("我要赚钱!")
    
    
    class SuperMan(Human):   #创建SuperMan类,继承Human
    
        def __init__(self,name,age,power,rating):  #
            
            #使用super()继承Human类的属性name,age
            super(SuperMan,self).__init__(name,age)
    
            self.power = power
    
            self.rating = rating
    
        def __save(self):
    
            print("我的名字:",self.name,"年龄:",self.age,"超能力:",self.power,"等级:",self.rating)
    
        def getSave(self):
    
            return self.__save()
    
    
    class Super_China(SuperMan,China):
    
        def __init__(self,DD,name,age,power,rating):
            super(Super_China,self).__init__(name,age,power,rating)
    
            self.DD = DD
            
            self.name = name
    
            self.age = age
    
            self.power = power
    
            self,rating = rating
    
           
    
        def SC(self):
    
            print("我是Super_china!")
    
    
    #实例化Human
    human = Human("人类",12)
    
    #实例化China
    china = China("",12)
    
    #实例化SuperMan
    superman = SuperMan("迪迦",12,"M87能量","满级")
    
    #实例化Super_China
    super_china = Super_China(33,"name",12,"M78","低级")
    
    #调用China方法
    china.make_Money()
    
    #调用SuperMan的方法
    superman._SuperMan__save()
    
    #调用Super_China方法
    super_china.SC()
    
    
    #使用getsave()
    superman.getSave()
    
    print("=======================")
    
    #因为所有都继承Human类,都继承了eat()和sleep()方法
    #打印每个类的eat()
    def feed(obj):
        obj.eat()
    
    feed(human)
    feed(china)
    feed(superman)
    
    #继承类的顺序
    print(SuperMan.mro())
    
            
    View Code

  • 相关阅读:
    洛谷P5281 [ZJOI2019] Minimax搜索
    势函数
    Comet OJ [Contest #5] 迫真大游戏
    洛谷P3307 [SDOI2013] 项链
    洛谷P5985 [PA2019] Muzyka pop
    CF1205E Expected Value Again
    review
    CF891E Lust
    线性代数
    洛谷P4607 [SDOI2018] 反回文串
  • 原文地址:https://www.cnblogs.com/Crown-V/p/12713218.html
Copyright © 2020-2023  润新知