活动地址:优快云21天学习挑战赛
昨天没发,这篇补昨天的!
目录
第6章 容器类型的数据
6.1 序列
序列(sequence)是一种可迭代的、元素有序的容器类型的数据。
序列包括列表(list)、字符串(str)、元组(tuple)和字节序列 (bytes)等。
6.1.1 序列的索引操作
索引有正值索引和负值索引之分。
正值索引:第一个索引值是 0
负值索引:最后一个索引值是 -1
len()函数用于获取序列的长度
6.1.2 加和乘操作
加(+)和乘(*)运算符也可以用于序列中的元素操作。加(+)
运算符可以将两个序列连接起来,乘(*)运算符可以将两个序列重复
多次。
6.1.3 切片操作
序列的切片(Slicing)就是从序列中切分出小的子序列
切片运算符的语法形式为[start:end:step]。其中,start是开始索引,end是结束索引,step是步长(切片时获取的元素的间隔,可以为正整数,也可以为负整数)。
注意:切下的小切片包括start位置的元素,但不包括end位置的元素,start和end都可以省略。省略步长(默认值为1)。
步长为负值时,从右往左获取元素,所以[:-1]切片的结果是原始序列元素的倒置
6.1.4 成员测试
成员测试运算符有两个:in和not in,in用于测试是否包含某一个元
素,not in用于测试是否不包含某一个元素。
6.2 列表
列表(list)是一种可变序列类型,我们可以追加、插入、删除和
替换列表中的元素。
6.2.1 创建列表
创建列表有两种方法。
1 、list(iterable)函数:参数iterable是可迭代对象(字符串、列表、
元组、集合和字典等)。
2、[元素1,元素2,元素3,⋯]:指定具体的列表元素,元素之间以
逗号分隔,列表元素需要使用中括号括起来。
6.2.2 追加元素
列表是可变的序列对象,列表可以追加元素。
1 在列表中追加单个元素时,可以使用列表的append(x)方法。
2 在列表中追加多个元素时,可以使用加(+)运算符或列表的extend(
t)方法。
6.2.3 插入元素
想向列表中插入元素时,可以使用列表的list.insert(i,x)方法,
其中,i指定索引位置,x是要插入的元素。
6.2.4 替换元素
想替换列表中的元素时,将列表下标索引元素放在赋值符号(=) 的左边,进行赋值即可。
6.2.5 删除元素
想在列表中删除元素时,可使用列表的list.remove(
x)方法,如果
找到匹配的元素x,则删除该元素,如果找到多个匹配的元素,则只删
除第一个匹配的元素。
6.3 元组
元组(tuple)是一种不可变序列类型。
6.3.1 创建元组
创建元组时有两种方法。
1 、tuple(iterable)函数:参数iterable是可迭代对象(字符串、列表、元组、集合和字典等)。
2 、(元素1,元素2,元素3,⋯):指定具体的元组元素,元素之间
以逗号分隔。对于元组元素,可以使用小括号括起来,也可以省略小括
号。
6.3.2 元组拆包
创建元组,并将多个数据放到元组中,这个过程被称为元组打包。
与元组打包相反的操作是拆包,就是将元组中的元素取出,分别赋
值给不同的变量。
6.4 集合
集合(set)是一种可迭代的、无序的、不能包含重复元素的容器类
型的数据。
6.4.1 创建集合
序列中的元素是有序的;集合的元素是无序的,但元素不能重复。
我们可以通过以下两种方式创建集合。
1、 set(iterable)函数:参数iterable是可迭代对象(字符串、列表、
元组、集合和字典等)。
2、 {元素1,元素2,元素3,⋯}:指定具体的集合元素,元素之间以
逗号分隔。对于集合元素,需要使用大括号括起来。
6.4.2 修改集合
修改集合类似于修改列表,可以向其中插入和删除元素。修改可变
集合有如右所示的常用方法。
add(elem):添加元素,如果元素已经存在,则不能添加,不会
抛出错误。
remove(elem):删除元素,如果元素不存在,则抛出错误。
clear():清除集合。
6.5 字典
字典(dict)是可迭代的、通过键(key)来访问元素的可变的容器
类型的数据。
字典由两部分视图构成:键视图和值视图。键视图不能包含重复的
元素,值视图能。在键视图中,键和值是成对出现的。
6.5.1 创建字典
我们可以通过以下两种方法创建字典。
1 、dict()函数。
2、 {key1:value1,key2:value2,...,key_n:value_n}:指定具体
的字典键值对,键值对之间以逗号分隔,最后用大括号括起来。
6.5.2 修改字典
字典可以被修改,但都是针对键和值同时操作的,对字典的修改包
括添加、替换和删除。
6.5.3 访问字典视图
我们可以通过字典中的三种方法访问字典视图。
items():返回字典的所有键值对视图。
keys():返回字典键视图。
values():返回字典值视图。