最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python基礎(chǔ)之enumerate()函數(shù)用法詳解

 更新時間:2025年12月03日 08:41:11   作者:Geoking.  
enumerate()函數(shù)用于將一個可遍歷的數(shù)據(jù)對象(如列表、元組或字符串)組合為一個索引序列,同時列出數(shù)據(jù)和數(shù)據(jù)下標(biāo),一般用在for循環(huán)當(dāng)中,這篇文章主要介紹了Python基礎(chǔ)之enumerate()函數(shù)用法的相關(guān)資料,需要的朋友可以參考下

一、enumerate()是什么?

emurate /??nju?m?re?t/

中文名即為枚舉

日常 Python 編程中,我們經(jīng)常需要在遍歷列表、元組或字符串時,同時獲取元素的索引和值。
如果你曾這樣寫過代碼??:

index = 0
for value in ['a', 'b', 'c']:
    print(index, value)
    index += 1

那恭喜你,是時候認(rèn)識一個更優(yōu)雅的 Python 內(nèi)置函數(shù)——enumerate() ??。

enumerate() 是 Python 的內(nèi)置函數(shù),用于在 遍歷可迭代對象時自動計(jì)數(shù)。
它返回一個 枚舉對象(enumerate object),其中每個元素是一個 (index, value) 元組。

二、基本語法

enumerate(iterable, start=0)

參數(shù)說明:

  • iterable:可迭代對象(如列表、元組、字符串等)
  • start:索引的起始值(默認(rèn)從 0 開始)

返回值:

  • 一個可迭代的 enumerate 對象

三、基本用法示例

fruits = ['apple', 'banana', 'cherry']

for index, fruit in enumerate(fruits):
    print(index, fruit)

輸出:

0 apple
1 banana
2 cherry

可以看到,enumerate() 自動為我們生成了索引。

四、自定義起始索引

有時候我們不希望從 0 開始計(jì)數(shù),比如行號通常從 1 開始。

可以使用 start 參數(shù)來自定義:

for index, fruit in enumerate(fruits, start=1):
    print(f"第{index}個水果是 {fruit}")

輸出:

第1個水果是 apple
第2個水果是 banana
第3個水果是 cherry

五、enumerate()的底層原理

enumerate() 實(shí)際上等價于下面這種寫法:

def my_enumerate(iterable, start=0):
    n = start
    for elem in iterable:
        yield n, elem
        n += 1

它返回的是一個生成器(iterator),在循環(huán)中逐步生成索引和值,因此不會占用額外的內(nèi)存。

六、與普通循環(huán)的對比

功能普通循環(huán)使用 enumerate()
需要手動維護(hù)索引? 是? 否
可讀性一般更高
內(nèi)存占用相似相似
推薦使用? 不推薦? 推薦

示例對比:

# 傳統(tǒng)寫法
for i in range(len(fruits)):
    print(i, fruits[i])

# enumerate 寫法(更簡潔)
for i, fruit in enumerate(fruits):
    print(i, fruit)

下次你再需要索引和元素同時出現(xiàn)時,
記得:

不要再用 range(len(...)),直接用 enumerate()

七、結(jié)合條件語句的高級用法

enumerate() 常常與條件判斷搭配使用,用來查找特定元素的位置。

nums = [10, 20, 30, 40, 50]

for i, num in enumerate(nums):
    if num == 30:
        print(f"找到了 30,在索引 {i}")

輸出:

找到了 30,在索引 2

八、與其他可迭代對象一起使用

enumerate() 不僅能用于列表,也能用于 字符串、元組、集合、字典(遍歷 key 或 value) 等。

遍歷字符串:

for i, ch in enumerate("Python"):
    print(i, ch)

輸出:

0 P
1 y
2 t
3 h
4 o
5 n

遍歷字典的鍵:

data = {'a': 1, 'b': 2, 'c': 3}

for i, key in enumerate(data):
    print(i, key, data[key])

輸出:

0 a 1
1 b 2
2 c 3

九、將枚舉對象轉(zhuǎn)換為列表或字典

enumerate() 返回的是一個枚舉對象,我們可以直接轉(zhuǎn)換為其他類型。

fruits = ['apple', 'banana', 'cherry']

# 轉(zhuǎn)換為列表
print(list(enumerate(fruits)))
# [(0, 'apple'), (1, 'banana'), (2, 'cherry')]

# 轉(zhuǎn)換為字典
print(dict(enumerate(fruits, start=1)))
# {1: 'apple', 2: 'banana', 3: 'cherry'}

這在數(shù)據(jù)映射索引管理時非常實(shí)用。

?? 參考資料

總結(jié)

到此這篇關(guān)于Python基礎(chǔ)之enumerate()函數(shù)用法的文章就介紹到這了,更多相關(guān)Python基礎(chǔ)enumerate()函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

棋牌| 临桂县| 延长县| 宁河县| 庆云县| 仁布县| 大港区| 牡丹江市| 石城县| 东兰县| 若羌县| 克拉玛依市| 灵丘县| 同仁县| 简阳市| 江安县| 道孚县| 凉山| 黎平县| 利川市| 枣强县| 六枝特区| 桂阳县| 清苑县| 凭祥市| 台湾省| 珠海市| 富宁县| 阳曲县| 芦溪县| 永年县| 龙岩市| 吉首市| 大名县| 莱西市| 当雄县| 西青区| 靖江市| 淮南市| 泸水县| 东乡族自治县|