###################总结################# 面试的时候 让写python一些特殊方法 __init__ 创建对象的时候初始化 __new__对象实例化调用第一个方法 __call__ 对象 __del__ 销毁的时候 __len__ len调用行为 __str__ str调用行为 __bytes__ __hash__ __bool__ 返回true或者false __lt__小于 __le__小于等于 __eq__等于 __ne__不等于 __get__大于 _…
Python面向对象三要素-继承(Inheritance) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.继承概述 1>.基本概念 前面我们学习了Python的面向对象三要素之一,封装.今天我们来学习一下继承(Inheritance) 人类和猫类都继承自动物类. 个体继承自父类,继承了父类的一部分特征,但也可以有自己的个性. 再面向对象的世界中,从父类继承,就可以直接拥有父类的属性方法,这样可以减少代码,多复用.子类可以定义自己的属性和方法. 2>.看一个不用继承的例子…
Python面向对象三要素-封装(Encapsulation) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.封装概述 将数据和操作组织到类中,即属性和方法 将数据隐藏起来,给使用者提供操作(方法).使用者通过操作就可以获取或者修改数据.getter和setter. 通过访问控制,暴露适当的数据和操作给用户,该隐藏的隐藏起来,例如保护成员或私有成员. 二.类属性的访问控制  1>.抛出问题 #!/usr/bin/env python #_*_conding:utf-8_*…
Python 面向对象之 类与属性 今天接触了一下面向对象,发现面向对象和之前理解的简直就是天壤之别,在学Linux的时候,一切皆文件,现在学面向对象了,so,一切皆对象. 之前不是一直在学的用面向函数编程,用函数就可以搞定一切了,但是为啥要用面向对象?面向对象呢,大大的提高了程序的可扩展性,面对不停的需求改变的时候,面向对象的优越性就展现出来了,先从面向函数来向面向对象进行过度. 先举一个例子: # def dog(name,gender,type): # # 狗的动作 # def jiao(…
Python面向对象02/类的空间问题.类与对象之间的关系.类与类之间的关系 目录 Python面向对象02/类的空间问题.类与对象之间的关系.类与类之间的关系 1. 类的空间问题 2. 类与对象之间的关系 3. 类与类之间的关系 1. 类的空间问题 添加对象属性 # 在类的__init__可以添加,在类的方法也可以添加,在类的外部也可以添加 class Human: mind = '有思想的' def __init__(self, name, age): self.name = name se…
Python面向对象    类成员 1.字段         普通字段    属于对象         静态字段    属于类   2.方法 普通方法   触发者是对象    括号里至少一个参数 self = 当前对象 ,可以有多个参数 类方法     @classmethod   (cls=当前类)  触发者是类,用类直接调用,括号里只能有一个参数cls                         对静态方法的约束,只能有一个参数,参数在传值的时候自动把当前类传入.单例模式时用到. 静态方…
python 面向对象 你把自己想象成一个上帝,你要创造一个星球,首先你要把它揉成一个个球,两个直径就能创造一个球 class star: '''名字(name),赤道直径(equatorial diameter),极直径(polar diameter)''' def __init__(self,name,eqDiameter,poDiameter): self.name=name self.eqDiameter=eqDiameter #赤道直径 self.poDiameter=poDiamet…
面向对象是一种编程方式, 主要集中在类和对象的两个概念 python 中的类符合封装, 继承, 多态的特征 类 是一个模板, 是n多函数的集成 对象 是类的实例化 类的成员分为三大类:字段.方法.属性 字段 字段包括静态字段和普通字段,静态字段只在内存中保存一份, 普通字段在每个对象中都要保存一份(值可不同) 普通字段属于对象, 实例化对象时普通字段存在于对象的内存中 静态字段属于类, 实例化对象之后不存在与对象的内存中 应用场景:如果类的多个对象需要使用相同的属性值则应定义为静态字段. cla…
类的特殊成员 1. __doc__     表示类的描述信息 class Foo: """ 描述类信息,这是用于看片的神奇 """ def func(self): pass print Foo.__doc__ ============== 描述类信息,这是用于看片的神奇 2. __module__ 和  __class__  __module__ 表示当前操作的对象在哪个模块    __class__     表示当前操作的对象的类是什么 3. …
一.绑定方法与非绑定方法 一.绑定方法:绑定给谁就应该由谁来调用,谁来调用就会将谁当作第一个参数传入 1.绑定给对象的方法:类中定义的函数默认就是绑定给对象的 2.绑定给类的方法:为类中定义的函数加上一个装饰器@classmethod 二.非绑定方法:既不与类绑定,又不与对象绑定,意味着对象和类都可以来调用,无论谁来调用都是一个普通的函数,普通函数没有自动传值的效果 案例如下: class Foo: def f1(self): print(self) @classmethod def f2(cl…