【Python学习】序列之通用操作
最近准备系统学习python,为了以后能及时查找到,先记录下.
先说下啥叫序列,之前在用,感觉这个概念有个模糊,今天特意看了下,序列是python中最基本的数据结构,序列中的每一个元素都被分配一个序号,即元素的位置,也成为索引。类似于“数组”。python中包含6种内建序列,即列表,元组,字符串,Unicode字符串,buffer对象和xrange对象。
1.python中所有序列都可以进行一些特定操作,包括索引(indexing)、分片(slicing)、序列相加(adding)、乘法(multiplying)、成员资格、长度、最小值和最大值。
2.索引
(1)序列中的每一个元素都分配一个数字,代表它在序列中的位置(索引),第一个索引是0,第二个索引是1,以此类推,从0开始递增,可以通过编号分别对序列的元素进行访问。
(2)从左向右,是从0依次递增,即a[0],a[1]...。若从右向左,则最右边的元素索引值为-1,从右向左依次递减。
3.分片
(1)索引是用来对单个元素进行访问,使用分片可以对一定范围内的元素进行访问,分片通过冒号进行实现,即a[1:3]。分片操作的实现需要提供两个索引作为边界,第一个索引的元素包含在分片内,第二个索引的元素不包含在分片内,类似于a≤x<b。
(2)分片步长,该参数是隐式设置的,默认步长是1。对于正数步长,python会从序列的头部开始向右提取元素,直到最后一个元素;对于负数步长,则是从序列的尾部开始向左提取元素,直到第一个元素。正数步长必须让开始点小于结束点。负数步长必须让开始点大于结束点。
3.序列相加
使用加号可以进行序列连接操作。只有类型相同的序列才能通过加号进行序列连接操作,不同类型的序列不能通过加号进行序列连接操作。
(1)数字序列可以和数字序列通过加号进行连接,连接后是数字序列。
(2)字符串序列+字符串序列=字符串序列。
(3)数字序列+字符串,不能通过加号进行连接。
4.乘法
用一个数字乘以一个序列会产生新的序列,新的序列将被重复X次。可以进行一些初始化操作,如重复操作、空列表和None初始化操作。
5.成员资格
提供in运算符,返回检验结果,为真时为True,结果返回假时为False,这种运算符称为布尔运算符。可以很好地检测字符或数字是否在对应的列表中。
但数字类型不能在字符串类型中使用in进行检测;字符串类型可在数字类型中使用in进行检测。
6.长度、最小值和最大值
len(obj),计算长度值,obj指序列。
max(obj),计算最大元素,也可以直接以多个数字,如max(5,3,10,9)。
min(obj),计算最小元素,也可以直接以多个数字,如min(5,3,10,9)。
2018/4/23