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