多重继承
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])
字符串,str,【】提取字符,replace()替换,内存分析
str()实现数字转型字符串
str()可以帮助我们将其他数据类型转换为字符串。
使用【】提取字符
字符串的本质就是字符序列,我们可以通过在字符串后面添加【】,在【】里面指定偏移量,可以提取该位置的单个字符。
正向搜索:
最左侧第一个字符,偏移量是0,第二个偏移量是1,以此类推。知道len(str)-1为止
反向搜索:
最右侧第一个字符,偏移量是-1,倒数第二个偏移量是-2,以此类推,知道-len(str)为止
replace()实现字符串替换
字符串是”不可替换的“,我们通过【】可以获取字符串指定位置的字符,但是我们不能改变字符串。
删除变量和垃圾回收机制
可以通过del语句删除不在使用的变量。
如果对象没有变量引用,就会被垃圾回收器回收,清空内存空间
标识符
基本用法
标识符:用于变量,函数,类,模块等的名称。
1.区分大小写。如:sxt和SXT是不同的
2.第一个字符必须是字母,下划线。其后的字符是:字母,数字,下划线
3.不能使用关键字。比如:if,or,while等
4.以双下划线开头和结尾的名称通常有特殊含义,尽量避免这种写法。比如:__init__是类的构造函数。