Python中的正索引和负索引?
通过索引,我们可以访问Python序列数据类型中的项目。字符串、列表、元组和范围对象都是序列数据类型。在本教程中,我们将更详细地介绍索引。
什么是列表索引?
任何编程语言中的任何线性数据结构都是围绕索引构建的。每台机器的默认索引从0开始,一直持续到n-1。在这种情况下,n代表相应数据结构中项目的总数。类型包括
正索引 - 从0递增到1。
负索引 - 每次遍历都从尾部移动到头部,从最后一个元素开始。
这些方便了我们访问此数据结构的许多组件的能力。让我们在下一部分检查这些过程。
元组索引
与我们访问列表和字符串中的元素的方式类似,我们可以访问元组中的元素。因此,索引和切片是我们访问项目所需的唯一方法。此外,索引很简单,从索引零开始,就像在列表中一样。此外,我们放在方括号内的数字代表元组的索引。让我们看看一些使用元组索引来检索元组元素的实例。
示例1
tup1 = (10, 3, 4, 22, 1) # for accessing the first element of the tuple print(tup1[0])
输出
10
示例2
tup1 = (10, 3, 4, 22, 1) # accessing the third element of the tuple print(tup1[2])
输出
4
示例3
tup1 = (10, 3, 4, 22, 1) print(tup1[10]) # gives an error as the index is only up to 4
输出
IndexError: tuple index out of range
示例4
tup1 = (10, 3, 4, 22, 1) print(tup1[1+3]) # the expression inside the square brackets results in an integer index 4. Hence, we get the element at the 4th index.
输出
1
Python中的基于零的索引
在Python中,基于正零的索引是访问可迭代项目的基本方法。
因此,从0开始的索引可以指代可迭代项中的任何元素。
在基于零的索引中,第一个元素的索引为0,第二个元素的索引为1,依此类推。
示例5
myList = [1, 2, 3, 4, 5] # NORMAL INDEXING print(myList[0]) print(myList[1]) print(myList[2]) # NEGATIVE INDEXING (STARTS FROM THE LAST ELEMENT IN THE LIST) print(myList[-1]) print(myList[-2]) print(myList[-3]) print(myList[-3:])
输出
1 2 3 5 4 3 [3, 4, 5]
负索引
如果我们希望从结尾开始打印组件,我们也可以使用负索引。此外,通过用负号指定索引号,我们可以执行负元组索引(-)。因此,这意味着编译器开始反向考虑元素,从元组中最后出现的元素开始。
示例3
tup = (22, 3, 45, 4, 2.4, 2, 56, 890, 1) print(tup[-4])
输出
2
现在,我们也可以在切片中使用负索引。
示例4
tup = (22, 3, 45, 4, 2.4, 2, 56, 890, 1) print(tup[-4:-1])
输出
(2, 56, 890)
元组index()方法
元组index()函数有助于查找元组中元素的索引或位置。基本上,此函数有两个用途:
给出元组中每个元素的第一个实例。
如果元组中不存在指定的元素,则抛出错误。
语法
tuple.index(value)
示例5:使用负索引删除元素
使用pop()函数并在其中传入-1作为参数,我们可以删除该列表的最后一个元素,然后得到一个新列表。
my_list = [45, 5, 33, 1, -9, 8, 76] my_list.pop(-1) print(my_list)
输出
[45, 5, 33, 1, -9, 8]
示例6:查找元素的索引
tup = (22, 3, 45, 4, 2.4, 2, 56, 890, 1) print(tup.index(45)) print(tup.index(890)) #prints the index of elements 45 and 890
输出
2 7
在Python列表中使用负索引的优点
需要更少的代码行,并且在一行中完成反转。
简化了复杂的过程。
运行速度快,同时需要较低的复杂度
结论
总而言之,Python允许从零开始的正索引和从-1开始的负索引。在Python中,负索引表示索引过程从可迭代项的末尾开始。最后一个元素位于索引-1处,倒数第二个元素位于索引-2处,依此类推。Python计算机语言中的数组支持负索引,但大多数其他编程语言不支持。这意味着索引值为-1提供最后一个元素,-2提供数组的倒数第二个元素。负索引从数组的末尾开始。
(2, 56, 890)
数据结构
网络
关系型数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP