Python中的enumerate函數(shù)使用方法詳解
前言
在Python編程中,我們經(jīng)常需要在循環(huán)遍歷一個序列時同時獲取元素的索引和值。為了實現(xiàn)這一需求,Python提供了一個內置的enumerate函數(shù),它能夠方便地為我們提供序列中每個元素的索引和值。
enumerate函數(shù)
enumerate函數(shù)接受兩個參數(shù):一個可迭代對象和一個可選的起始索引值。
語法
enumerate(iterable, start=0)
- iterable:一個可迭代的對象,如列表、元組等。
- start(可選):計數(shù)的起始值,默認為0。
示例
fruits = ['apple', 'banana', 'cherry']
for index, fruit in enumerate(fruits):
print(index, fruit)
輸出結果:
0 apple
1 banana
2 cherry
自定義起始索引
enumerate函數(shù)允許我們通過start參數(shù)自定義索引的起始值。
for index, fruit in enumerate(fruits, start=1):
print(index, fruit)
輸出結果:
1 apple
2 banana
3 cherry
應用場景
跟蹤循環(huán)迭代次數(shù)
enumerate常用于需要跟蹤循環(huán)迭代次數(shù)的場景。
for index, value in enumerate([1, 2, 3, 4, 5]):
print(f"迭代次數(shù): {index}, 值: {value}")
組合多個列表
enumerate可以與zip函數(shù)結合使用,同時遍歷多個列表。
names = ['Alice', 'Bob', 'Charlie']
scores = [90, 95, 88]
for index, (name, score) in enumerate(zip(names, scores), start=1):
print(f"學生 {index} 名字: {name}, 分數(shù): {score}")
注意事項
1、enumerate返回的是一個枚舉對象,它是一個可迭代對象。
2、 通過enumerate獲取的索引是從start參數(shù)指定的值開始的,而不是從可迭代對象的第一個元素開始。
3、 在使用enumerate時,應避免在循環(huán)內部修改可迭代對象的長度,否則可能會導致意外的結果。
普通的 for 循環(huán)
i = 0
seq = ['one', 'two', 'three']
for element in seq:
print (i, seq[i])
i +=1
0 one
1 two
2 three
for 循環(huán)使用 enumerate
seq = ['one', 'two', 'three']
for i, element in enumerate(seq):
print (i, element)
0 one
1 two
2 three
總結
這個函數(shù)還是很簡單的,隨手總結了一下這個函數(shù)的用法,其他的也沒什么可說的,Python就是這樣,很多知識點一堆,慢慢學吧。
到此這篇關于Python中enumerate函數(shù)使用方法的文章就介紹到這了,更多相關Python enumerate函數(shù)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
用Python實現(xiàn)數(shù)據(jù)篩選與匹配實例
大家好,本篇文章主要講的是用Python實現(xiàn)數(shù)據(jù)篩選與匹配實例,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下2022-02-02
淺談Python使用pickle模塊序列化數(shù)據(jù)優(yōu)化代碼的方法
這篇文章主要介紹了淺談Python使用pickle模塊序列化數(shù)據(jù)優(yōu)化代碼的方法,pickle模塊可以對多種Python對象進行序列化和反序列化,序列化稱為pickling,反序列化稱為unpickling,需要的朋友可以參考下2023-07-07
深度學習TextLSTM的tensorflow1.14實現(xiàn)示例
這篇文章主要為大家介紹了深度學習TextLSTM的tensorflow1.14實現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-01-01

