python對字典排序的方法-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務(wù)器提供商,新人活動買多久送多久,劃算不套路!

創(chuàng)新互聯(lián)建站長期為上1000家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為大名企業(yè)提供專業(yè)的成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營銷網(wǎng)站建設(shè),大名網(wǎng)站改版等技術(shù)服務(wù)。擁有十余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

這篇文章主要介紹了python對字典排序的方法,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

Python字典容器

python中的字典同其他語言中的字典作用一樣,都是用來存儲數(shù)據(jù)的容器。

python對字典排序的方法

只不過不同于其他序列型數(shù)據(jù)用下標(biāo)來訪問其中的對象,而是以關(guān)鍵字key來訪問其中的對象value。另外,字典也被稱為關(guān)聯(lián)數(shù)組或者哈希表。

字典的排序

有時候需要對生成的字典的結(jié)果按照key或者value進(jìn)行排序,主要用到的方法就是python的內(nèi)置函數(shù)sorted()。

sorted()函數(shù)的作用是對所有可迭代的對象進(jìn)行排序操作的函數(shù)。

sorted(iterable, cmp=None, key=None, reverse=False)

參數(shù)說明:

iterable:是可迭代的數(shù)據(jù)類型。

cmp:是用于比較的函數(shù),將key指定的關(guān)鍵字通過該函數(shù)規(guī)定的比較規(guī)則進(jìn)行比較。有點類似java中的Comparable抽象類中的compareTo()方法。傳遞兩個參數(shù),例如f(a,b),指定a和b的邏輯比較規(guī)則,結(jié)果返回正數(shù)、負(fù)數(shù)或者零來分別表示大于、小于和等于。

key:用于進(jìn)行比較的數(shù)據(jù)。

reverse:排序規(guī)則,默認(rèn)是True降序,或者設(shè)置為False來升序。

按照key值進(jìn)行排序

當(dāng)iterable傳入的dict時,dict返回的是對key迭代,所以得到的排序結(jié)果也是對key排序后的列表。

sorted_dict = sorted(dict, key=lambda x:x[0])
print(sorted_dict)
['LiSi', 'WangWu', 'ZhangSan', 'ZhaoLiu']

按照value值進(jìn)行排序

按照value排序時,只需把key迭代對象選擇為x[1]就可以了。

sorted_dict = sorted(dict.items(), key=lambda x:x[1], reverse=True)
print(sorted_dict)
[('LiSi', 10), ('WangWu', 5), ('ZhaoLiu', 4), ('ZhangSan', 2)]

其中,lambda匿名函數(shù)的作用類似:

def f(x):
    return x[1]

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享python對字典排序的方法內(nèi)容對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來學(xué)習(xí)!

本文標(biāo)題:python對字典排序的方法-創(chuàng)新互聯(lián)
網(wǎng)頁鏈接:http://bm7419.com/article0/cecioo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航品牌網(wǎng)站制作、App開發(fā)、網(wǎng)頁設(shè)計公司、虛擬主機、外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計