-
python类或对象中的魔法属性
对于一个类,python定义了许多可用的魔法属性,有些每个类都默认存在,有些需要用户手动定义。__doc__:类的文档信息,类的第一个逻辑行的字符串__name__:获取类的名称,只能使用Class.__name__,对象没有该属性__module__:类或者对象的所属的类所在模块__dict__:返回类的所有属性和属性值组成的字典,不包括继承来的属性和方法。__class__:获取实例对象的类(object.__class__),显示内容类似,使用类直接获取该属性ClassName.__class__,显示内容__bases__:获取指定类的所有直接父类(父类的父类不显示)组成的元组,...
2018-11-23 -
Python中的静态方法和类方法
静态方法一般情况下我们在类中定义方法时第一个参数是self,也就是将该方法和该实例对象绑定,这样该方法就可以通过实例对象进行访问但是有些情况下我们需要在创建时进行一些必要的前提操作,如参数检测等,此时对象尚未创建,不能使用对象的方法来操作我们可以使用__init__()方法进行必要的前提操作,我们也可以使用静态方法来完成该操作python中使用@staticmethod修饰符对静态方法进行修饰,并且静态方法不需要第一个参数self使用ClassName.func()来调用静态方法不使用@staticmethod修饰符的第一个参数不为self的方法也可以使用ClassName.func()...
2018-11-21 -
python中类和对象的常用内置方法和属性操作
issubclass(class , classinfo):如果class是classinfo的子类返回True,否则返回False1、一个类会被认为是自身的子类2、classinfo可以是类对象组成的元组,只要class是其中任何一个候选类的子类则返回Trueisinstance(object,classinfo):检查一个对象object是否是classinfo类的实例对象1、如果第一个参数传入的不是对象,则永远会返回False2、如果object是classinfo的子类的实例对象也返回True3、classinfo可以是类对象组成的元组,只要object是其中任何一个候选类的实例...
2018-11-20 -
python中OOP的继承和组合
继承在OOP程序设计中,当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的class称为基类、父类或超类(Base class、Super class)。继承的好处是子类获得了父类的全部功能,其次是多态。当子类和父类都存在相同的方法时,子类方法会覆盖父类的方法,在代码运行的时候,总是会调用子类的方法。这样,我们就获得了继承的另一个好处:多态。调用未绑定的父类方法和super()函数class FClass: def __init__(self): self.name=‘MyName‘ class ...
2018-11-20 -
python中的类实例和访问限制
面向对象最重要的概念就是类(Class)和实例(Instance),类是抽象的模板,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但各自的数据都互相独立,互不影响。定义类是通过class关键字:class Myclass([object]): pass class后面紧接着是类名Myclass,类名通常是大写开头的单词,object表示要继承的父类,一个类可以有多个父类,多个父类之间用逗号隔开,如果没有继承类,默认使用object类,这是所有类最终都会继承的类,object可以省略,你甚至可以省略掉括号在python中也是允许的class Myclass...
2018-11-15