zoukankan      html  css  js  c++  java
  • class  类
    def  方法
    xxx= xxx  实例
     
    class Abc():
    def __init__(self,abc,abc)
    self.abc=abc
    self.abc=abc
    def def_g(self):
    print()
    my_abc = Abc(11,11)
    print(my_abc.def_g())
    一、类定义:
    class <类名>:
    <语句>
    类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性。如果直接使用类名修改其属性,那么将直接影响到已经实例化的对象
     
    类的私有属性:
      __private_attrs  两个下划线开头,声明该属性为私有,不能在类地外部被使用或直接访问。在类内部的方法中使用时 self.__private_attrs
    类的方法
      在类地内部,使用def关键字可以为类定义一个方法,与一般函数定义不同,类方法必须包含参数self,且为第一个参数
    私有的类方法
      __private_method 两个下划线开头,声明该方法为私有方法,不能在类地外部调用。在类的内部调用slef.__private_methods
     
    类的专有方法:
    __init__  构造函数,在生成对象时调用
    __del__   析构函数,释放对象时使用
    __repr__ 打印,转换
    __setitem__按照索引赋值
    __getitem__按照索引获取值
    __len__获得长度
    __cmp__比较运算
    __call__函数调用
     
    __add__加运算
    __sub__减运算
    __mul__乘运算
    __div__除运算
    __mod__求余运算
    __pow__称方
     
    class Dog():
        def __int__(self,name,age):
            self.name = name
            self.age = age
        def sit(self):
            print(self.name.title()+ " is now sitting.")
        def roll_over(self):
            print(self.name.title()+ " rolled over!")
    在Python中,首字母大写的名称是类
     
    __init__()是一个特殊的方法,每当根据类创建新实例时,Python都会自动运行它。__init__(self,name)这个构造函数的左右下划线都是两个
     
    方法_init_()定义成包含三个形参,self.name.age.其中形参self必不可少,还必须位于其他形参的前面。每个与类相关联的方法调用都自动传递实参self,他是一个指向实例本身的引用。
     
    以self为前缀的变量都可供类中的所有方法使用。self.name = name获取存储在形参name中的值,并将其存储到变量name中,然后该变量被关联到当前创建的实例。
     
    my_dog = Dog('willie',6)
    print("My dog's name is " + my_dog.name.title() +".")
    print("My dog is " + str(my_dog.age) + " years old."
     
    我们通常可以认为首字母大写的名称(如Dog)指的是类,而小写的名称(如my_dog)指的是根据类创建的实例。
     
    要访问实例的属性,可使用句点表示法。my_dog.name
     
    在类里面可以定义一个值,可以设置成初始为0的
    def __init__(self,make,model,year):
        self.make = make
        self.model = model
        self.year = year
        self.odometer_reading = 0
     
    继承
    创建子类时,父类必须包含在当前文件中,且位于子类前面。同时必须在括号内指定父类的名称。
    例如:
    class ElectricCar(Car):
    继承了父类Car类下的所有功能,属性和类型
    super()是一个特殊函数,帮助Python将父类和子类关联起来。
    例如:
    def __init__(self,make,model,year):
    super().__init__(make,model,year)
    这行代码让Python调用ElectricCar的父类的方法__init__(),让ElectricCar实例包含父类的所有属性。
     
    给子类定义属性的时候写在子类的下面,只会定义给子类,不会给父类。
     
    模块
    定义模块,只要使用文本编辑器,把一些python代码输入到文本中,然后以.py为后缀名进行保存,任何此类文件都会被认为是python模块。
    然后将一个类保存为一个模块,必须用更具体的文件名,如my_car.py
    import car 将整个的car模块导入进来。
    from car import Car 打开模块car,导入其中的Car类。   后面的Car可以
    载入一个类,也可以多个,中间用","隔开。
     
    类编码风格
    采用驼峰命名法,将类名中的每个单词的首字母都大写,实例名和模块名都采用小写格式,并在单词之间加上下划线。
    在类定义后面包含一个文档字符串,每个模块也都应包含一个文档字符串。
    在类中,可使用一个空行来分隔方法,而在模块中,可使用两个空行来分隔类。
    需要同时导入标准库中的模块和你编写的模块时,先编写导入标准库模块的import语句,再添加一个空行,然后编写导入你自己编写的模块的Import语句。
  • 相关阅读:
    c++类的知识点(1)
    并查集经典例题分析
    并查集
    bfs-迷宫
    出栈次序--数学归纳法--蓝桥
    九宫重排
    Tomcat详解
    寒假日记-第三天
    寒假日记-第二天(MySQL语句)
    Java学期总结
  • 原文地址:https://www.cnblogs.com/hkgov/p/7367460.html
Copyright © 2011-2022 走看看