序列 (sequence)是Python最基本的一种数据结构。
序列中的每个元素都有编号,即其位置或索引,其中第一个元素的索引为0,第二个元素的索引为1,依此类推。Python的序列索引支持负数,-1表示序列的最后一个元素,这是Python不同其他很多种语言不同的地方。
Python内置了多种序列,列表、元组、字符串是其中最常用的三种,本文为你描述各种序列的通用操作。
索引从0开始,索引号为0的元素为1,greeting的索引号为0的元素为'H'。
你可能注意到'Hello'和'H'都用单引号包围,这是Python不同于其他语言的另一个地方。Python并没有专门用于表示字符的数据类型,因此一个字符就是一个只包含一个元素的字符串。
Python的序列索引支持负数,-1表示倒数第一个元素。
切片 (slicing)操作用于访问序列特定 范围 内的元素。在一对方括号内使用两个索引,并用冒号隔开:
注意到,返回的序列并未包含愿序列的第6个元素7,就相当于数学集合中的 左闭右开区间 操作。
换言之,你提供两个索引来指定切片的边界,其中第一个索引指定的元素包含在切片内,但第二个索引指定的元素不包含在切片内。
保留冒号,省略第一个索引,表示从序列起始位置开始切片;省略第二个索引,表示切片到序列末尾,包含最后一个元素:
这个操作的效果是:在指定的区间内间隔取元素,语法格式为:
例如:
步长为正数时,它从起点移到终点,而步长为负数时,它从终点移到起点。
可以使用加法运算(+运算符)拼接两个序列:
从错误消息可知,不能拼接列表和字符串,虽然它们都是序列。一般而言,不能拼接不同类型的序列。
将序列与数x 相乘时,将重复这个序列x 次来创建一个新序列:
初始化一个长度为10的空列表:
成员资格检查判定一个元素是否存在于集合中,如存在返回True,否则返回False,实际上是一个布尔表达式。
语法:
例如:
内置函数 len 返回序列包含的元素个数,而 min 和 max 分别返回序列中最小和最大的元素。
Python通用的序列操作有:索引、切片、乘法、成员资格检查、长度、最小值和最大值。
range()函数的用法如下:
(1)range(stop)
创建一个(0,stop)之间的整数序列,步长为1。
(2)range(start,stop)
创建一个(start,stop)之间的整数序列,步长为1。
(3)range(start,stop,step)
创建一个[start,stop)之间的整数序列,步长为step。
参数介绍:
start:表示从返回序列的起始编号,默认情况下从0开始。
stop:表示生成最多但不包括此数字的数字。
step:指的是序列中每个数字之间的差异,默认值为1。
range()是Python的内置函数,在用户需要执行特定次数的操作时使用它,表示循环的意思。内置函数range()可用于以列表的形式生成数字序列。在range()函数中最常见用法是使用for和while循环迭代序列类型(List,string等)。
简单的来说,range()函数允许用户在给定范围内生成一系列数字。根据用户传递给函数的参数数量,用户可以决定该系列数字的开始和结束位置以及一个数字与下一个数字之间的差异有多大。