久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Python 統(tǒng)計(jì)列表中重復(fù)元素的個(gè)數(shù)并返回其索引值的實(shí)現(xiàn)方法

瀏覽:2日期:2022-06-20 13:56:09

需求:統(tǒng)計(jì)列表list1中元素3的個(gè)數(shù),并返回每個(gè)元素的索引

list1 = [3, 3, 8, 9, 2, 10, 6, 2, 8, 3, 4, 5, 5, 4, 1, 5, 9, 7, 10, 2]

在實(shí)際工程中,可能會(huì)遇到以上需求,統(tǒng)計(jì)元素個(gè)數(shù)使用list.count()方法即可,不做多余說(shuō)明

返回每個(gè)元素的索引需要做一些轉(zhuǎn)換,簡(jiǎn)單整理了幾個(gè)實(shí)現(xiàn)方法

1 list.index()方法

list.index()方法返回列表中首個(gè)元素的索引,當(dāng)有重復(fù)元素時(shí),可以通過(guò)更改index()方法__start參數(shù)來(lái)更改起始索引

找到一個(gè)元素后,將起始索引替換為該元素的下一個(gè)索引,繼續(xù)進(jìn)行查找,直到找到所有的元素索引

list1 = [3, 3, 8, 9, 2, 10, 6, 2, 8, 3, 4, 5, 5, 4, 1, 5, 9, 7, 10, 2]count = list1.count(3)index_list = []index = -1# 通過(guò)list.index()方法的__start參數(shù),指定起始索引for i in range(0, count): index = list1.index(3, index + 1) index_list.append(index)print(index_list)

結(jié)果如下:

Python 統(tǒng)計(jì)列表中重復(fù)元素的個(gè)數(shù)并返回其索引值的實(shí)現(xiàn)方法

2 通過(guò)索引遍歷原列表,對(duì)每一個(gè)元素進(jìn)行判斷

通過(guò)索引遍歷原列表,對(duì)每一個(gè)元素進(jìn)行判斷,如果元素是目標(biāo)元素,則返回對(duì)應(yīng)索引值,示例如下:

list1 = [3, 3, 8, 9, 2, 10, 6, 2, 8, 3, 4, 5, 5, 4, 1, 5, 9, 7, 10, 2]list1_len = len(list1)index_list = []for i in range(0, list1_len): if list1[i] == 3:index_list.append(i)print(index_list)

結(jié)果同上

3 enumerate()函數(shù)和列表推導(dǎo)式

使用enumerate()函數(shù)返回可解析的index-value列表,然后使用列表推導(dǎo)式,同時(shí)使用if條件過(guò)濾得到目標(biāo)值的索引,示例如下:

list1 = [3, 3, 8, 9, 2, 10, 6, 2, 8, 3, 4, 5, 5, 4, 1, 5, 9, 7, 10, 2]index_list = [a for a, b in enumerate(list1) if b == 3]print(index_list)

結(jié)果同上

各位大佬有好的實(shí)現(xiàn)方法可以在下方評(píng)論分享一下

到此這篇關(guān)于Python 統(tǒng)計(jì)列表中重復(fù)元素的個(gè)數(shù)并返回其索引值的文章就介紹到這了,更多相關(guān)Python 統(tǒng)計(jì)列表元素內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 马关县| 灵武市| 和政县| 定西市| 沂源县| 西林县| 绥中县| 鄂温| 甘孜| 康乐县| 靖江市| 桓台县| 山东省| 石城县| 南宫市| 商河县| 芦山县| 怀仁县| 衡东县| 阿克陶县| 绥江县| 永昌县| 九江县| 蕉岭县| 西贡区| 绥滨县| 长泰县| 洪江市| 临武县| 连城县| 永和县| 府谷县| 张家口市| 巴彦县| 密山市| 冕宁县| 上林县| 濮阳市| 徐水县| 南丹县| 哈尔滨市|