首页 > 编程笔记

Python序列是什么?

序列通常是指一组有序的数据集合,其本质是一块存储多个值的连续内存空间,每个值都有对应的位置编号(索引),这些值具有一定的顺序,可以通过索引访问对应的值。

在 Python 中,序列不是一种特定的数据类型,只是一种存储数据的方式,字符串、元组、列表、集合、字典都可以归属于序列。序

列一般具有几种通用操作,如索引、切片、相加、相乘操作。因为集合和字典的无序性,因此它不具备这4种通用操作。

索引

一般来讲,序列内部的数据都是按照一定的顺序排列的,其中每个元素都有对应的位置编号(索引),如果一个序列中有 n 个元素,其起始元素的下标(索引)为 0,其余元素下标按照顺序依次递增,直至结尾元素的下标为 n-1 为止。

序列中元素与索引的下标序列如图1所示。

序列中元素与索引的下标序列
图1:序列中元素与索引的下标序列

在 Python 中序列的下标还可以使用负数的形式,其中结尾元素 n 的下标为 -1,向起始元素方向依次递减,直至起始元素的下标为 -1-n 为止。序列中元素与下标的负数形式如图2所示。

序列中元素与下标的负数形式序列
图2:序列中元素与下标的负数形式序列

切片

在序列中,元素一般按照一定的顺序排列,而且每个元素都有相对应的索引,可以通过索引对元素进行访问。

对于元素的访问除了索引的方式,还可以使用切片的方式。
切片的用法如下:

序列名[start:end:step]

对格式的说明:
序列切片的常用方法如下(以字符串为例):

1) 取整个字符串

string='Python程序员面试笔试通关攻略'
#取全部(“[]”中的“:”不能省略)
result=string[:]
print(result)
运行结果如下:
Python程序员面试笔试通关攻略

2) 省略起始位置

string='Python程序员面试笔试通关攻略'
#省略起始索引(不包含结束索引位置的元素)
result=string[:6]
print(result)
运行结果如下:
Python

3) 使用步长

string='Python程序员面试笔试通关攻略'
#使用步长(间隔元素的个数)
result=string[0:len(string):2]
print(result)
运行结果如下:
Pto程员试试关典

4) 使用负数进行取值

string='Python程序员面试笔试通关攻略'
#使用负数索引(取最后两个元素)
result=string[-2:]
print(result)
运行结果如下:
宝典

序列相加

序列相加,就是将两个序列进行连接,形成一个新的序列,这个新序列中会保留之前两个序列中重复的元素。

需要注意的是,进行序列相加操作的两个序列必须是同种类型,如两个字符串进行相加操作。

以字符串为例,序列相加操作如下:
#序列1
str1='Python程序员面试'
#序列2
str2='Python程序员笔试'
#序列相加
str=str1+str2
print(str)
运行结果如下:
Python程序员面试Python程序员笔试

序列相乘

序列相乘是指一个序列与一个非零的正整数 n 相乘,其相乘结果是一个新的序列。新序列是原有序列内元素重复n 次的结果。

以字符串为例,序列相乘操作如下:
string='Python程序员面试笔试通关攻略'
#序列相乘
str=string*2
print(str)
运行结果如下:
Python程序员面试笔试通关攻略Python程序员面试笔试通关攻略

推荐阅读