表格数据
r1={key1:value1,key2:value2,key3:value3}字典定义单行
r2={key1:value1,key2:value2,key3:value3}
tb=[r1,r2],列表组件表格
访问值
tb[0].get("key")
表格数据
r1={key1:value1,key2:value2,key3:value3}字典定义单行
r2={key1:value1,key2:value2,key3:value3}
tb=[r1,r2],列表组件表格
访问值
tb[0].get("key")
序列解包
a,b,c=dict a,b,c接受键
a,b,c=dict.values() abc接受值
a,b,c=dict.items() abc接受键值对
字典修改
dict[键]=值, 添加新元素,key重复则覆盖
dict1.update(dict2),以dict2的内容加入dict1,键重复则覆盖。
del(dict[键1]) 删除键1和值
dict.pop("键1"),删除键1值对,并返回值
dict.clear()清空字典
dict.popitem()随机移除一个键值对
字典访问
dict.get("键",“不存在时返回的值”)
dict.items() 显示所有键值对
dict.keys() 显示所有键
dict.values() 显示su
len(dict) 返回键值对数量
"键" in dict判断键是否在字典里
通过切片访问返回的还是元组
元组排序只能用sorted(),并生成列表
zip(list1,list2,list3),返回zip对象并将每个列表转化为元组
字典:键值对的无序可变序列
键为不可变数据,不可重复
a={键1:值1,键2:值2}
b=dict(键1=值1,键2=值2)
c=dict( [ (键1,值1),(键2,值2) ] )
d=dict(zip(list1,list2))
e=dict.fromkeys([key1,key2 ,key3])
生成器推导式,产生生成器对象
s=(x*2 for x in range(5))
tuple(s) 转换为元组,用完一次s失效
s._next_()指针调动,输出当前值并下移
list.index(值,位置1,位置2)返回位置1-到位置2之间的第一个“值”的位置。
list.count(值)
成员资格
值 in (not in) list,返回True,False
元组是不可变序列
创建元组
a=(,,,)
a=tuple(字符,数字,列表)
多维列表:列表嵌套
a[一维引索][二维引索]
列表排序 修改原列表,不建立新列表
list.sort()默认升序排列
list.sort(reverse=True)降序排列
import random
random.shuffle(list)
列表排序,建立新列表
new_list=sorted(list),升序
new_list=sorted(list,reverse=True),降序
c=reversed(list)返回逆序排列的迭代器对象,只能用一次
max(list), min(list)
sum(list),数值型列表可用
列表元素提取
list[起始位置:终点位置:step], 从起始位置到终点-1位置,step为-1时反向提取
列表元素删除
del a[位置],有数组拷贝,地址不变
list.pop(位置),删除位置上的元素并返回元素值
list.remove(值),删除第一个指定值,不存在就报错。
列表增加,删除
append(),
尽量减少在列表中间修改,涉及大量复制会消耗内存,尽量在尾部删,增。
a=a+[],非尾部添加,实际是创建新列表,耗内存
expend(),
原地址尾部添加
expend([50,60]),不改变地址,适合两个列表对接
insert(索引,值) 元素插入指定位置,设计大量拷贝,地址不变
列表乘法 a=a*3
mro()函数
python支持多继承,如果多个父类有相同名字的方法,在没有指定父类的时候,解释器将“从左到右”按顺序搜索
mro():方法解析顺序。我们可以通过mro()方法来获得“类的层次结构”,方法解析顺序也是按照这个累的层次结构寻找的
多重继承
一个子类可以有多个直接父类
好处:可以使我们类具备多个“父类”的特点
坏处:类的整体层次异常复杂,尽量避免使用
重写__str__()方法
object有一个__str__()方法,用于的返回一个对于“对象的描述”,对应于内置函数str()经常用于print()方法,帮助我们查看到对象的信息
object根类__dir__()
通过类的方法mro()或者类的属性_mor_可以输出这个类的继承层次结构
object类是所有类的父类,所有的类都有object类的属性和方法
类成员的继承和重写
1、成员继承:子类继承了父类除构造方法之外的所有成员
2、方法重写:子类可以重新定义父类的方法, 这样就覆盖父类的方法,也称为“重写”
1、继承
是代码复用的重要手段
一个子类可以继承多个父类
语法格式:
class 子类(父类):
类体
如果没有指定父类,默认父类是object类
object类是python里的一个类,object是所有类的父类,里面定义了一些多有类共有的默认属性,例如__new__()