python 統(tǒng)計(jì)數(shù)組中元素出現(xiàn)次數(shù)并進(jìn)行排序的實(shí)例
如下所示:
lis = [12,34,456,12,34,66,223,12,5,66,12,23,66,12,66,5,456,12,66,34,5,34] def test1(): #進(jìn)行去重 c = [] for i in lis: if i not in c: c.append(i) #進(jìn)行統(tǒng)計(jì),生成二維列表 b = [] for i in c: num = 0 for j in range(len(lis)): if lis[j] == i: num += 1 a = [] a.append(i) a.append(num) b.append(a) # 排序算法,按出現(xiàn)次數(shù)進(jìn)行降序排列 for i in range(len(b)): for j in range(i,len(b)): if b[i][1] < b[j][1]: temp = b[i] b[i] = b[j] b[j] = temp print(b) def test2(): # set進(jìn)行去重,進(jìn)行統(tǒng)計(jì)生成二維列表 b = [] for i in list(set(lis)): num = 0 for j in range(len(lis)): if lis[j] == i: num += 1 a = [] a.append(i) a.append(num) b.append(a) # 排序算法,按出現(xiàn)次數(shù)進(jìn)行降序排列 for i in range(len(b)): for j in range(i,len(b)): if b[i][1] < b[j][1]: temp = b[i] b[i] = b[j] b[j] = temp print(b) def test3(): # 統(tǒng)計(jì)元素出現(xiàn)次數(shù),元素為key,次數(shù)為value,生成字典 a = {} for i in lis: if i in a: a[i] = a[i] + 1 else: a[i] = 1 # 使用sorted對(duì)字典進(jìn)行排序 b = sorted(a.items(),key=lambda item:item[1],reverse=True) print(b) def test4(): from collections import Counter import operator #進(jìn)行統(tǒng)計(jì) a = dict(Counter(lis)) #進(jìn)行排序 b= sorted(a.items(), key=operator.itemgetter(1),reverse=True) print(b) if __name__ == '__main__': test1() test2() test3() test4()
輸出結(jié)果如下:
[[12, 6], [66, 5], [34, 4], [5, 3], [456, 2], [223, 1], [23, 1]] [[12, 6], [66, 5], [34, 4], [5, 3], [456, 2], [23, 1], [223, 1]] [(12, 6), (66, 5), (34, 4), (5, 3), (456, 2), (23, 1), (223, 1)] [(12, 6), (66, 5), (34, 4), (5, 3), (456, 2), (23, 1), (223, 1)]
這是面試過(guò)程中遇到的一個(gè)問(wèn)題找到的解決方法,總結(jié)了一下,小編是初學(xué)者,還需不斷努力學(xué)習(xí)。
以上這篇python 統(tǒng)計(jì)數(shù)組中元素出現(xiàn)次數(shù)并進(jìn)行排序的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python的Flask框架中的Jinja2模板引擎學(xué)習(xí)教程
這篇文章主要介紹了Python的Flask框架中的Jinja2模板引擎學(xué)習(xí)教程,Jinja2模板引擎的用法也是Flask的Web開(kāi)發(fā)中的重要知識(shí),需要的朋友可以參考下2016-06-06Python實(shí)現(xiàn)雙色球號(hào)碼隨機(jī)生成
和體彩大樂(lè)透類(lèi)似,福彩雙色球也是購(gòu)買(mǎi)次數(shù)最多的彩種之一,相比大樂(lè)透,雙色球更容易中小獎(jiǎng)。本文將介紹?Python?實(shí)習(xí)雙色球彩票自由的流程,感興趣的可以了解一下2022-05-05python中的不可變數(shù)據(jù)類(lèi)型與可變數(shù)據(jù)類(lèi)型詳解
探尋python的數(shù)據(jù)類(lèi)型是否可變,也可以更好的理解python對(duì)內(nèi)存的使用情況,下面這篇文章主要給大家介紹了關(guān)于python中不可變數(shù)據(jù)類(lèi)型與可變數(shù)據(jù)類(lèi)型的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2018-09-09Pytorch加載數(shù)據(jù)集的方式總結(jié)及補(bǔ)充
Pytorch自定義數(shù)據(jù)集方法,應(yīng)該是用pytorch做算法的最基本的東西,下面這篇文章主要給大家介紹了關(guān)于Pytorch加載數(shù)據(jù)集的方式總結(jié)及補(bǔ)充,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11一文讓你秒懂精通pip并快速體驗(yàn)深度學(xué)習(xí)應(yīng)用【建議收藏】
在使用python的時(shí)候,經(jīng)常使用到pip這個(gè)工具,可以很方便的線上安裝依賴(lài)庫(kù),當(dāng)然pip還有很多參數(shù)都可以幫我們?nèi)ゲ樵?xún)一些庫(kù)信息,這篇文章主要給大家介紹了如何通過(guò)一篇文章讓你秒懂精通pip并快速體驗(yàn)深度學(xué)習(xí)應(yīng)用的相關(guān)資料,需要的朋友可以參考下2021-08-08python使用requests.post方法傳遞form-data類(lèi)型的Excel數(shù)據(jù)的示例代碼
這篇文章介紹了python使用requests.post方法傳遞form-data類(lèi)型的Excel數(shù)據(jù)的示例代碼,某些post接口,需要發(fā)送multipart/form-data類(lèi)型的數(shù)據(jù),如何使用python requests來(lái)模擬這種類(lèi)型的請(qǐng)求發(fā)送呢?補(bǔ)充講解了python使用requests post請(qǐng)求發(fā)送form-data類(lèi)型數(shù)據(jù),一起看看吧2024-01-01python 遞歸相關(guān)知識(shí)總結(jié)
這篇文章主要介紹了python 遞歸相關(guān)知識(shí)總結(jié),幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-03-03