Python 如何索引和切片列表
列表是Python提供的四种最常用的数据结构之一。列表是Python中的一种数据结构,是可变的,并且具有有序的元素序列。以下是一个整数值的列表。
lis= [1,2,3,4,5]
print(lis)
如果你执行以上代码片段,将会产生以下输出。
[1, 2, 3, 4, 5]
在本文中,我们将讨论如何在Python中对列表进行索引和切片。
列表索引
在Python中,每个带有元素的列表都有一个位置或索引。可以通过使用索引号来访问或操作列表的每个元素。
有两种类型的索引——
- 正向索引
- 负向索引
正向索引
在正向索引中,列表的第一个元素位于索引0处,而后续元素依次递增1。
在下图中,我们可以看到元素与其索引或位置的关联。
示例
以下是一个示例代码,展示了对列表进行正向索引的方法。
list= [5,2,9,7,5,8,1,4,3]
print(list[2])
print(list[5])
输出
上面的代码产生以下结果
9
8
负索引
在负索引中,元素的索引从列表的末尾开始。也就是说,列表的最后一个元素被认为是在位置-1,前一个元素在位置-2,依此类推,直到第一个元素。
在下图中,我们可以看到一个元素与其索引或位置的关联。
示例
以下是一个示例代码,展示了列表的负索引。
list= [5,2,9,7,5,8,1,4,3]
print(list[-2])
print(list[-8])
输出
上述代码产生以下结果
4
2
切片列表
在Python中,切片列表是一种常见的做法,它是程序员用来解决高效问题的最常用技术。考虑一个Python列表,你必须切片列表以访问其中的一系列元素。一个方法是使用冒号作为简单的切片运算符(:)。
切片运算符允许你指定切片的开始位置、结束位置和步长。列表切片会从旧列表创建一个新列表。
语法
列表的语法如下所示。
List[Start : Stop : Stride]
上面的表达式从索引Start到索引Stop返回列表的部分,步长为Stride。
示例
在以下示例中,我们使用切片操作来切片一个列表。我们还使用负索引方法来切片一个列表。
list= [5,2,9,7,5,8,1,4,3]
print(list[0:6])
print(list[1:9:2])
print(list[-1:-5:-2])
输出
上面的代码产生以下结果
[5, 2, 9, 7, 5, 8]
[2, 7, 8, 4]
[3, 1]