python 統(tǒng)計數(shù)組中元素出現(xiàn)次數(shù)并進行排序的實例
更新時間:2018年07月02日 09:17:55 作者:li532331251的博客
今天小編就為大家分享一篇python 統(tǒng)計數(shù)組中元素出現(xià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():
#進行去重
c = []
for i in lis:
if i not in c:
c.append(i)
#進行統(tǒng)計,生成二維列表
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ù)進行降序排列
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進行去重,進行統(tǒng)計生成二維列表
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ù)進行降序排列
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)計元素出現(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對字典進行排序
b = sorted(a.items(),key=lambda item:item[1],reverse=True)
print(b)
def test4():
from collections import Counter
import operator
#進行統(tǒng)計
a = dict(Counter(lis))
#進行排序
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)]
這是面試過程中遇到的一個問題找到的解決方法,總結(jié)了一下,小編是初學者,還需不斷努力學習。
以上這篇python 統(tǒng)計數(shù)組中元素出現(xiàn)次數(shù)并進行排序的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python的Flask框架中的Jinja2模板引擎學習教程
這篇文章主要介紹了Python的Flask框架中的Jinja2模板引擎學習教程,Jinja2模板引擎的用法也是Flask的Web開發(fā)中的重要知識,需要的朋友可以參考下2016-06-06
python中的不可變數(shù)據(jù)類型與可變數(shù)據(jù)類型詳解
探尋python的數(shù)據(jù)類型是否可變,也可以更好的理解python對內(nèi)存的使用情況,下面這篇文章主要給大家介紹了關于python中不可變數(shù)據(jù)類型與可變數(shù)據(jù)類型的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下2018-09-09
Pytorch加載數(shù)據(jù)集的方式總結(jié)及補充
Pytorch自定義數(shù)據(jù)集方法,應該是用pytorch做算法的最基本的東西,下面這篇文章主要給大家介紹了關于Pytorch加載數(shù)據(jù)集的方式總結(jié)及補充,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-11-11
python使用requests.post方法傳遞form-data類型的Excel數(shù)據(jù)的示例代碼
這篇文章介紹了python使用requests.post方法傳遞form-data類型的Excel數(shù)據(jù)的示例代碼,某些post接口,需要發(fā)送multipart/form-data類型的數(shù)據(jù),如何使用python requests來模擬這種類型的請求發(fā)送呢?補充講解了python使用requests post請求發(fā)送form-data類型數(shù)據(jù),一起看看吧2024-01-01

