序列类型来源于数学概念中的数列,数列是按一定顺序排成一列的一组数,每个数称为这个数列的项,每项不是在其他项之前,就是在其他项之后。存储n项元素的数列{Sn}的定义如下:
{Sn}=s0,s1,s2,s3,……sn-1
需要注意的是,数列的索引从0开始,通过索引i可以访问数列中的第i-1项。例如通过s1可获取数列{Sn}中的第2项。
序列是具有先后关系的一组元素
序列是一维元素变量(元素之间存在先后关系,所以元素之间可以相同)元素类型可以不同
类似数学元素序列:s0,s1,s2,s3,……sn-1
元素间由序号引导,通过下标访问序列的特定元素
序列是一个基类类型(基本的数据类型)
序列类型可以分为字符串类型,元组类型,列表类型。
序列类型在数列的基础上进行了扩展,Python中的序列支持双向索引。
序列类型有一个关于序号的定义,序列类型中,元素存在正向递增的序号的索引关系和反向递减序号的索引关系
正向递增索引从左向右依次递增,第一个元素的索引为0,第二个元素的索引为1,依此类推;反向递减索引从右向左依次递减,从右数第一个元素的索引为-1,第2个元素的索引为-2,依此类推。
字符串类型中只有一个字符,而在序列类型中其中的每一个元素可以是任何一种数据类型
6个序列类型通用操作符:
操作符及应用 | 描述 |
x in s | 如果x是序列s的元素,返回True,否则返回False |
x not in s | 如果x不是序列s的元素,返回True,否则返回False |
s+t | 连接两个序列s和t |
s*n或n*s | 将序列s复制n次 |
s[i] | 索引,返回s中的第i个元素,i是序列的序号(序号有正向递增,反向递减两种体系) |
s[i,j]或s[i,j,k] | 切片,返回序列s中第i到j以k为步长的元素子序列 |
我们以下列出部分示例,在之后的列表和元组里面会提供详细的体现操作符功能的代码
示例如下:
(1)字符串多类型反转:
代码示例如下:
ls=['1',2,'rgf','ypl'] print(ls[::-1])
运行界面如下:
(2)字符串字符类型反转:
代码示例如下:
ls='12rgfypl' print(ls[::-1])
运行界面如下:
序列方法:
函数和方法 | 描述 |
len(s) | 返回序列s的长度 |
min(s) | 返回序列s的最小元素,s中元素需要可比较 |
max(s) | 返回序列s的最大元素,s中元素需要可比较 |
s.index(x)或s.index(x,i,j) | 返回序列s从i开始到j位置中第一次出现元素x的位置 |
s.count(x) | 返回序列s中出现x的总次数 |
相关示例如下:
(1)index的示例如下:
ls=[12,'rgf','ypl'] a=ls.index('rgf',0,2) print(a)y
运行界面如下:
(2)len示例如下:
ls=[12,'rgf','ypl'] print(len(ls))
运行界面如下:
(3)max示例如下:
ls='rgfypl' print(max(ls))
运行界面如下:
元组数据类型:元组类型就是将元素进行有序的排列
元组是序列类型的一种扩展
元组是一种序列类型,一旦创建就不能被修改
使用括号()或tuple()进行创建,元素间用逗号进行分隔。在输出字符串的时候,无法用()进行创建,需要使用tuple()进行创建。
可以使用或者不使用小括号。
(1)示例如下所示:
def func(): return 1,2 func()
此时所定义的函数返回了两个值1,2,而在Python内部会认为函数返回了一个值,这个值以元组的形式存在,及(1,2)。
(2)示例二所示:
creature="cat","dog","tiger","human" print(creature)
代码示例如下:
此时输出为元组形式。
(3)示例三所示:
creature="cat","dog","tiger","human" color=0x001100,"blue",creature print(color)
运行界面如下:
元组类型继承了序列类型的全部通用操作。包含序列操作符,序列的处理函数,序列的处理方法
元组因为创建后不能被修改,因此没有特殊操作。
(1)元组反转:
creature="cat","dog","tiger","human" color=0x001100,"blue",creature print(color) print(color[::-1])
运行界面如下:
(2)元组索引:
creature="cat","dog","tiger","human" color=0x001100,"blue",creature print(color) print(color[::-1]) print(color[-1][1]) #color元组的最后一个元素的第二个元素
运行界面如下:
元组是不可变类型,元组中的元素不能修改,即它不支持添加元素、删除元素和排序操作。