久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

Python OrderedDict字典排序方法詳解

瀏覽:90日期:2022-07-25 08:22:27

很多人認為python中的字典是無序的,因為它是按照hash來存儲的,但是python中有個模塊collections(英文,收集、集合),里面自帶了一個子類

OrderedDict,實現了對字典對象中元素的排序。請看下面的實例:

import collectionsprint 'Regular dictionary'd={}d[’a’]=’A’d[’b’]=’B’d[’c’]=’C’for k,v in d.items(): print k,vprint 'nOrder dictionary'd1 = collections.OrderedDict()d1[’a’] = ’A’d1[’b’] = ’B’d1[’c’] = ’C’d1[’1’] = ’1’d1[’2’] = ’2’for k,v in d1.items(): print k,v輸出:Regular dictionarya Ac Cb BOrder dictionarya Ab Bc C1 12 2

可以看到,同樣是保存了ABC等幾個元素,但是使用OrderedDict會根據放入元素的先后順序進行排序。所以輸出的值是排好序的。

OrderedDict對象的字典對象,如果其順序不同那么Python也會把他們當做是兩個不同的對象,請看事例:

print ’Regular dictionary:’d2={}d2[’a’]=’A’d2[’b’]=’B’d2[’c’]=’C’d3={}d3[’c’]=’C’d3[’a’]=’A’d3[’b’]=’B’print d2 == d3print ’nOrderedDict:’d4=collections.OrderedDict()d4[’a’]=’A’d4[’b’]=’B’d4[’c’]=’C’d5=collections.OrderedDict()d5[’c’]=’C’d5[’a’]=’A’d5[’b’]=’B’print d1==d2輸出:Regular dictionary:TrueOrderedDict:False

再看幾個例子:

dd = {’banana’: 3, ’apple’:4, ’pear’: 1, ’orange’: 2}#按key排序kd = collections.OrderedDict(sorted(dd.items(), key=lambda t: t[0]))print kd#按照value排序vd = collections.OrderedDict(sorted(dd.items(),key=lambda t:t[1]))print vd#輸出OrderedDict([(’apple’, 4), (’banana’, 3), (’orange’, 2), (’pear’, 1)])OrderedDict([(’pear’, 1), (’orange’, 2), (’banana’, 3), (’apple’, 4)])

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 中文字幕在线观看av | 美女视频一区 | 国产不卡视频在线观看 | 亚洲第一成人在线视频 | 91精品国产免费 | 影音先锋资源av | 97精品超碰一区二区三区 | 免费av观看| 欧美一区二区三区电影 | 奇米精品一区二区三区在线观看 | 欧美一区永久视频免费观看 | 国产一区二区三区免费在线 | 亚洲v日韩v综合v精品v | av资源首页 | 国产ts视频 | 黄色小视频在线免费观看 | 欧美日韩成人激情 | 久久综合91 | 日韩av一区在线 | 天天干天天操天天爽 | 精品亚洲区 | 国产精品免费av | 美女福利视频网站 | 天天看天天爽 | 美国黄色毛片 | 国产精品毛片一区视频播 | 伊人网亚洲 | 综合色九九 | 日本亚洲欧美 | 91麻豆久久久 | 欧美伦理一区二区 | 天天干天天爱天天 | 日韩在线观看网站 | 日本黄a三级三级三级 | 欧美高清视频一区二区三区 | 日韩电影中文字幕 | 精品亚洲一区二区 | 午夜午夜精品一区二区三区文 | 99在线观看 | 国产一级大片 | 亚洲精品一区中文字幕乱码 |