【一】认识整合数据类型
1.序列类型(字符串,列表,元组)
2.索引方式:支持双向索引:正向递增索引和反向递减索引正向递增索引从左向右依次递增,第一个元素的索引为0,第二个元素的索引为1,以此类推;反向递减索引从右向左依次递减,从右数第一个元素的索引为-1,第二个元素的索引为-2,以此类推。
3.特性(确定性,互异性,无序性)
Python要求放入集合中的元素必须是不可变类型,Python中的整型、浮点型、字符串类型和元组属于不可变类型,列表、字典及集合本身都属于可变的数据类型。
确定性:给定一个集合,那么任何一个元素是否在集合中就确定了。
互异性:集合中的元素互不相同。
无序性:集合中的元素没有顺序,顺序不同但元素相同的集合可视为同一集合
4.映射类型(一对一,不可变)
映射类型以键值对的形式存储元素,键值对中的键与值之间存在映射关系。字典(dict)是Python唯一的内置映射类型
【二】列表
Python列表的创建方式非常简单,既可以直接使用中括号“[]”创建,也可以使用内置的list()函数快速创建
1.可迭代
支持通过for…in…语句迭代获取数据的对象就是可迭代对象。目前,我们学习过可迭代的类型有字符串和列表,后续学习的集合、字典、文件也是可迭代类型的对象。使用isinstance()函数可以判断目标是否为可迭代对象,返回True表示为可迭代对象
2.访问列表元素(切片,索引,循环)
1/切片
2/索引
2/循环
3.添加列表元素(append(),extend(),insert())
1/append()只能在末尾添加元素
2/extend()只能在末尾添加另一个序列的所有元素
3/insert()在指定位置插入
4/元素排序(sort()sorted()severse())
1//sort() 有序的元素会覆盖原来的列表元素,不产生新列表
2//sorted()产生排序后的新列表,排序操作不会对原列表产生影响
3//severse()逆置列表,即把原列表中的元素从右至左依次排列存放
5/删除元素(del、remove()、pop()、clear())
1//del删除列表中指定位置的元素
2//remove()移除列表中匹配到的第一个元素
3//pop()移除列表中的某个元素,若未指定具体元素,则移除列表中的最后一个元素
4//clear()清楚列表所有元素
6/列表推导式
列表推导式是符合Python语法规则的复合表达式,它用于以简洁的方式根据已有的列表构建满足特定需求的列表
列表推导式还可以结合if判断语句或for循环嵌套,生成更灵活的列表
【三】元组
1/创建元组
元组的表现形式为一组包含在圆括号“()”中、由逗号分隔的元素,元组中元素的个数、类型不受限制。除了使用()构建元组外,还可以使用内置函数tuple()构建元组
2/索引,切片,遍历
1//索引
2//切片
3//遍历
【四】集合
1.集合的定义
1/Python的集合(set)本身是可变类型,但Python要求放入集合中的元素必须是不可变类型。大括号“{}”或内置函数set()均可构建集合。
s1 = {1} # 使用{}构建集合
s2 = set([1,2]) # 使用set构建元组
2/需要注意,使用{}不能创建空集合(不包含元素的{}创建的是字典变量),空集合只能利用set()函数创建
set_demo1 = {}
set_demo2 = set()
print(type(set_demo1))
print(type(set_demo2))
3/集合是可变的,集合中的元素可以动态增加或删除
4/集合也可以利用推导式创建,集合推导式的格式与列表推导式相似,区别在于集合推导式外侧为大括号“{}”
{exp for x in set if cond}
2.字典
1/创建字典
字典的表现形式为一组包含在大括号“{}”中的键值对,每个键值对为一个字典元素,每个元素通过逗号“,”分隔,每对键值通过“:”分隔,除了使用“{}”创建字典还可以使用内置函数dict创建字典
d1 = {'A': 123, 12: 'python'} # 使用{}构建集合
d2 = dict({'A': '123', 'B': '135'}) # 使用dict构建元组
2/字典的访问(键,get(),keys(),values(),items())
1//get
2//keys()获取所有键
3//values()获取所有值
4//item()获取所有元素
3/元素的修改和增加and删除
修改(update,通过键)
增加(update,键)
删除pop()、popitem(),clear()
4/字典推导式
字典推导式外侧为大括号“{}”,且内部需包含键和值两部分