序列
序列是一块用于存放多个值的连续内存控件。主要包括有列表、元组、集合、字典、和字符串。对于这些结构有以下几个通用的操作。
- 索引
序列中的每一个元素都有一个编号,就是所谓的索引。懂得编程的都很清楚就是和C 语言中数组一样,每一个元素都一个下标,这个下标就是所谓的索引。
Python 还有一点比较神奇。就是index 可以是负值。从最后一个元素开始对应的索引依次是-1,-2,….
- 切片
切片是访问序列中元素的另外一种方式。通过切片操作生成的是一个新的序列。
格式:
序列名称[切片访问序列起始索引:切片访问序列结束索引:切片访问序列步长]
切片访问序列起始索引:可以不指定,默认值是0;
切片访问序列结束索引:不指定默认就是序列的最大长度值;
切片访问序列步长:如果不指定省略值就是1,就是依次访问序列中的值。
- 序列相加
只有两种相同的类型的序列才可以相加。即将两个序列前后进行连接。相同序列是指明要么同为列表、同为元组、同为集合等。
4.检测元素是否在序列中存在
使用 序列中的值 in 序列名称
5.计算序列的长度、最大值和最小值
就是屌用paython内置的库函数,这些函数封装好了一定的功能可以直接拿来使用。
6.列表
列表用一对“[ ]”表示,两个相对元素使用逗号”,”分割。列表的内容可以防止任意值,包括:整数、字符串、列表、元组等元素,个数没有限制。
定义方式:
列表名称 = [element0,element1,……]
虽然列表中可以防止不同类型的内容,但实际编写程序的时候都是在同一个列表中防止同样类型的数据,增加程序的可读性。
6.1 创建空列表
Emptylist = []
6.2 将数据转换为列表
可以直接使用list(data)内置函数将data数据转为一个列表,data可以是range对象、字符串、元组等。
6.3 删除列表
del listname. 不常用,python 会有垃圾回收会自己启动回收机制。
6.4 访问列表元素
可以根据索引依次访问各个元素。也可以使用切片。见上面序列通用功能介绍。
6.5 遍历列表
使用for and enumerate() 既可以遍历到索引又可以遍历到元素值。
6.6 添加、修改、删除列表元素
1.使用列表对象的append()方法实现,这样新增加的元素防止列表的末尾。
2.使用insert方法添加元素到指定的位置。
3.使用extend方法将一个列表追加到列表的末尾。
4.修改元素:通过索引可以直接修改元素的值,在序列通用功能章节已经介绍了。
5.删除元素:通过索引删除元素,del list[index].也可以通过元素值删除元素,这样删除的是第一个遍历到的和要删除的元素值内容一样的元素。
6.统计元素值一样的元素个数,使用count内置函数。
7.使用index函数可以计算元素值对应的元素的下标,但是也是获取到第一个元素值一样的下标。
8.求列表的和 sum(),只适合对整形元素的列表进行求和操作。
9.使用sort()对列表进行排序;排序后原来列表的值也被修改了,使用sorted不会修改原来列表的值。默认是升序排列,可以通过参数指定,见下面第三幅图。
6.7 列表推导式
列表推导式是为了快速的生成一个列表。
生成指定范围数值的列表
list = [表达式 for var in range].
range 用于指明生成列表的个数;
表达式 表明列表中的元素值;
Var 就是循环用的变量
根据列表生成指定的列表
道理差不多,都是使用表达式和循环的操作。
- 从列表中选择符合条件的数组成新的列表
添加了if 条件判断,如下图