python数据容器
一、列表
1、索引
2、列表的常用操作(方法)
插入、删除、清空、修改、统计个数
3、列表特点
可以容纳多个列表(上限为2**63-1个)
可以容纳不同类型的元素(混装)
数据是有序存储的(有下标序号)
允许重复数据存在
可以修改(增加或删除元素等)
二、列表的遍历-while循环
1、while遍历
2、for遍历
3、while循环和for循环的对比
(1)在循环控制上:
while循环可以自定循环条件,并自行控制;
for循环不可以自定循环条件,只可以一个个从容器内取出数据;
(2)在无限循环上:
while循环可以通过条件控制做到无限循环;
for循环适用于遍历数据容器的场景或简单的固定次数循环场景;
二、元组
元组一旦定义完成,就不可以修改,所以当我们需要在程序内封装数据,又不希望封装的数据被篡改,那么元组就非常合适了;
三、str(字符串)
字符串特点:只可以存储字符串、长度任意(取决于内存大小)、支持下表索引、允许重复字符串存在、不可以修改(增加或删除等)、不可以修改(增加或删除元素等)、支持for循坏;
四、序列
内容连续、有序,可使用下标索引的一类数据容器;
列表、元组、字符串,均可以视为序列;
1、步长
五、set集合
去重且无序,因为要对元素去做去重处理,所以无法保证顺序和创建的时候一致;
因为集合是无序的,所以集合不支持下标索引访问,不可以用while循环遍历;
集合和列表一样,是允许修改的;
基本语法:
1、修改
(1)添加新元素
(2)移除元素
(3)从集合中随机取出元素
(4)清空集合
(5)取出2个集合的差集
语法:集合1.difference(集合),功能:取出集合1和集合2的差集(集合1有而集合2没有的);
结果:得到一个新集合,集合1和集合2不变;
(6)消除2个集合的差集
语法:集合1.difference_update(集合2);
功能:对比集合1和集合2,在集合1内,删除和集合2相同的元素;
结果:集合1被修改,集合2不变;
(7)2个集合合并
语法:集合1.union(集合)
功能:将集合1和集合2组合成新集合;
结果:得到新集合,集合1和集合2不变;
六、字典
使用存储{},不过存储的元素是一个个的:键值对;
每一个键值对包含Key和Value(用 : 分割);
键值对之间使用逗号分隔;
Key和Value可以使任意类型的数据(key不可为字典);
Key不可重复,重复会对原有数据覆盖;
字典同集合一样,不可以使用下标索引;
但是字典可以通过Key值来取得对应的Value;
1、新增元素
语法:字典[Key]=Value,结果:字典被修改,新增了元素;
2、更新元素
语法:字典[Key]=Value,结果:字典被修改,元素被更新;
注意:字典Key不可以重复,所以对已存在的Key执行上述操作,就是更新Value值;
3、删除元素
语法:字典.pop(Key),结果:获取指定Key的Value,同时字典被修改,指定Key的数据被删除;
4、清空字典
语法:字典.clear(),结果:字典被修改,元素被清空;
5、获取全部的Key
语法:字典.keys(),结果:得到字典中的全部Key;
6、遍历字典
语法:for key in 字典.keys()
注:字典不支持下标索引,所以同样不可以用while循环遍历;
七、数据容器对比总结
1、数据容器分类
2、数据容器特点对比
3、数据容器的通用操作
(1)容器的通用转换功能;
list(容器):将给定容器转换为列表;
str(容器):将给定容器转换为字符串;
tuple(容器):将给定容器转换为元组;
set(容器):将给定容器转换为集合;
(2)容器通用排序功能
通用排序功能:sorted(容器, [ reverse=True ])
注意:排序后都会得到列表(list)对象。
八、字符串大小比较
1、ASCII码表
2、字符串比较
字符串是按位比较,也就是一位位进行对比,只要有一位大,那么整体就大;