多态
多态
super()获得父类的定义
mro()
Python支持多继承,如果父类中有相同名字的方法,在子类没有指定父类名时,解释器将从左往右按顺序搜索。
多重继承
Python支持多重继承,一个子类可以有多个直接父类,这样就具备了多个父类的特点。但是这样会被类的整体层次搞的异常复杂,尽量避免使用。
重写__str__()方法
继承
继承是面向对象程序设计的重要特征,也是实现代码复用的重要手段。
如果一个新类继承自一个设计好的类,就直接具备了已有类的特征,就大大降低了工作难度。已有的类,我们称为“父类或基类”,新的类,我们成为“子类或派生类"。
__call__()方法和可调用对象
定义了__call__方法的对象,称为”可调用对象“,即该对象可以像函数一样被调用。
__del__()析构方法和垃圾回收机制
类对象
嵌套函数_内部函数_数据隐藏
嵌套函数:
在函数内部定义的函数!
快捷命令
注意中文问题
不要在程序中,行的开头处增加空格。
递归函数_函数调用内存分析_栈帧的创建
递归函数_函数调用内存分析_栈帧的创建
递归函数指的是:自己调用自己的函数,在函数体内部直接或间接的自己调用自己。
综合练习_绘制不同颜色的多个同心圆_绘制棋盘
嵌套循环
一个循环体内可以嵌入另一个循环,一般成为“嵌套循环”,或者“多重循环”。
字典_核心底层原理_内存分析_查找值对象过程
根据键查找”键值对“的底层过程
字典_复杂表格数据存储_列表和字典综合嵌套
二维列表
一维列表可以帮助我们存储一维,线性的数据。
二维列表可以帮助我们存储二维,表格的数据。
列表排序
修改原列表,不建新列表的排序
建新列表的排序
我们也可以通过内置函数sorted()进行排序,这个方法返回新列表,不对原列表做修改。
reversed()返回迭代器
列表的创建
基本语法【】创建
>>> a = [10,20,30,'abc','xdf']
>>> a = [] #创建一个空的列表对象
list()创建
使用list()可以将任何可迭代的数据转化成列表
>>> a = list() #创建一个空的列表对象
>>> a = list(range(10))
>>> a
[0,1,2,3,4,5,6,7,8,9]
>>> a = list("abc,def")
range()创建整数列表
range()可帮助我们非常方便的创建证书列表,这在开发中极其有用。
语法格式为: range([start,] end [,step])