如何在Python中索引和切片元组?
元组是由逗号分隔的有序和不可变的Python对象集合。与列表类似,元组也是序列。元组与列表的区别在于它们无法被修改,而列表可以,并且它们使用括号而不是方括号。
tup=('tutorials', 'point', 2022,True)
print(tup)
如果执行以上代码段,则会产生以下输出 −
('tutorials', 'point', 2022, True)
在本文中,我们将讨论如何在Python中索引和切片元组。
阅读更多:Python 教程
元组索引
在Python中,具有元素的每个元组都有一个位置或索引。可以使用索引号访问或操作元组的每个元素。
它们有两种类型的索引 −
- 正索引
- 负索引
正索引
在正索引中,元组的第一个元素的索引为0,后续元素为+1,依此类推。
在下图中,我们可以看到元组中的元素如何与其索引或位置关联。
示例1
以下是一个示例代码,显示元组的正索引。
tuple= (5,2,9,7,5,8,1,4,3)
print(tuple(3))
print(tuple(7))
输出
以上代码将产生以下结果
7
4
负索引
在负索引中,元素的索引从元组的末尾开始。也就是说,元组的最后一个元素位于位置-1,上一个元素位于位置-2,直到第一个元素。
在下图中,我们可以看到元组的每个元素与其索引或位置的关联。
示例
以下是一个示例代码,以显示元组的负索引。
tuple= (5,2,9,7,5,8,1,4,3)
print(tuple(-2))
print(tuple(-8))
输出
以上代码将产生以下结果
4
2
切片元组
切片元组是Python中经常使用的一种方法,也是程序员解决有效问题最常用的技术。考虑一个Python元组。您必须对元组进行切片,以便在其中访问一系列元素。一种方法是使用冒号作为简单的切片运算符(:)。
切片运算符允许您指定从哪里开始切片,到哪里停止切片以及采取的步骤。元组切片从旧元组创建一个新元组。
语法
tuple[Start : Stop : Stride]
以上表达式返回元组从索引Start到索引Stop的部分,步长为Stride。
示例 1
在下面的示例中,我们使用切片运算符切片元组。我们还使用了负索引方法来切片元组。
tuple= ('a','b','c','d','e','f','g','h','i','j')
print(tuple[0:6])
print(tuple[1:9:2])
print(tuple[-1:-5:-2])
输出
以上代码产生以下结果
('a', 'b', 'c', 'd', 'e', 'f')
('b', 'd', 'f', 'h')
('j', 'h')
示例 2
以下是另一个示例 –
my_tuple = ('t', 'u', 'r', 'i', 'a', 'l', 's', 'p','o', 'i', 'n', 't')
print(my_tuple[1:]) #从索引1打印元素到末尾
print(my_tuple[:2]) #从开始打印元素到索引2
print(my_tuple[5:12]) #从索引5打印元素到索引11
print(my_tuple[::5]) #使用步长从开始到结束打印元素
输出
('u', 'r', 'i', 'a', 'l', 's', 'p', 'o', 'i', 'n', 't')
('t', 'u')
('l', 's', 'p', 'o', 'i', 'n', 't')
('t', 'l', 'n')