python字典排序?qū)嵗斀?/h1>
更新時(shí)間:2015年05月20日 09:56:56 作者:久月
這篇文章主要介紹了python字典排序?qū)崿F(xiàn)方法,實(shí)例分析了Python字典排序的相關(guān)技巧,需要的朋友可以參考下
本文實(shí)例分析了python字典排序的方法。分享給大家供大家參考。具體如下:
1、 準(zhǔn)備知識(shí):
在python里,字典dictionary是內(nèi)置的數(shù)據(jù)類型,是個(gè)無(wú)序的存儲(chǔ)結(jié)構(gòu),每一元素是key-value對(duì):
如:dict = {'username':'password','database':'master'},其中'username'和'database'是key,而'password'和'master'是value,可以通過d[key]獲得對(duì)應(yīng)值value的引用,但是不能通過value得到key。
對(duì)于dictionnary,需知道以下幾點(diǎn)注意事項(xiàng):
a、 dictionary 的 key 是大小寫敏感的;
b、 一個(gè)dictionary中不能有重復(fù)的 key;
c、 dictionary是無(wú)序的,沒有元素順序的概念,它們只是序偶的簡(jiǎn)單排列。
2、 字典排序?qū)崿F(xiàn):
前面已說(shuō)明dictionary本身沒有順序概念,但是總是在某些時(shí)候,但是我們常常需要對(duì)字典進(jìn)行排序,怎么做呢?下面告訴你:
方法1:最簡(jiǎn)單的方法,排列元素(key/value對(duì)),然后挑出值。字典的items方法,會(huì)返回一個(gè)元組的列表,其中每個(gè)元組都包含一對(duì)項(xiàng)目——鍵與對(duì)應(yīng)的值。此時(shí)排序可以sort()方法。
def sortedDictValues1(adict):
items = adict.items()
items.sort()
return [value for key, value in items]
方法2:使用排列鍵(key)的方式,挑出值,速度比方法1快。字典對(duì)象的keys()方法返回字典中所有鍵值組成的列表,次序是隨機(jī)的。需要排序時(shí)只要對(duì)返回的鍵值列表使用sort()方法。
def sortedDictValues1(adict):
keys = adict.keys()
keys.sort()
return [adict[key] for key in keys]
方法3:通過映射的方法去更有效的執(zhí)行最后一步
def sortedDictValues1(adict):
keys = adict.keys()
keys.sort()
return map(adict.get,keys)
方法4:對(duì)字典按鍵排序,用元組列表的形式返回,同時(shí)使用lambda函數(shù)來(lái)進(jìn)行;
sorted(iterable[, cmp[, key[, reverse]]]
cmp和key一般使用lambda
如:
>>> d={"ok":1,"no":2}#對(duì)字典按鍵排序,用元組列表的形式返回
>>> sorted(d.items, key=lambda d:d[0])
[('no', 2), ('ok', 1)]
對(duì)字典按值排序,用元組列表的形式返回
>>> sorted(d.items, key=lambda d:d[1])
[('ok', 1), ('no', 2)]
對(duì)字典元素的排序雖然有好多種方法,這里也沒有總結(jié)全,但如果對(duì)程序效率沒有太高要求,選擇喜歡的用就好。
希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
-
Django將默認(rèn)的SQLite更換為MySQL的實(shí)現(xiàn)
今天小編就為大家分享一篇Django將默認(rèn)的SQLite更換為MySQL的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧 2019-11-11
-
python實(shí)現(xiàn)把二維列表變?yōu)橐痪S列表的方法分析
這篇文章主要介紹了python實(shí)現(xiàn)把二維列表變?yōu)橐痪S列表的方法,結(jié)合實(shí)例形式總結(jié)分析了Python列表推導(dǎo)式、嵌套、循環(huán)等相關(guān)操作技巧,需要的朋友可以參考下 2019-10-10
-
python通過ssh-powershell監(jiān)控windows的方法
這篇文章主要介紹了python通過ssh-powershell監(jiān)控windows的方法,涉及Python操作ssh-powershell的相關(guān)技巧,需要的朋友可以參考下 2015-06-06
-
Python 實(shí)用技巧之利用Shell通配符做字符串匹配
這篇文章主要介紹了Python 實(shí)用技巧之利用Shell通配符做字符串匹配的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下 2019-08-08
-
python函數(shù)中將變量名轉(zhuǎn)換成字符串實(shí)例
這篇文章主要介紹了python函數(shù)中將變量名轉(zhuǎn)換成字符串實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧 2020-05-05
-
Pytorch中的Tensorboard與Transforms搭配使用
這篇文章主要介紹了Pytorch中的Tensorboard與Transforms搭配使用,主要是結(jié)合了前兩篇文章的的一個(gè)小練習(xí),感興趣的小伙伴可以來(lái)練習(xí)一下,希望對(duì)你的學(xué)習(xí)有所幫助 2021-12-12
最新評(píng)論
本文實(shí)例分析了python字典排序的方法。分享給大家供大家參考。具體如下:
1、 準(zhǔn)備知識(shí):
在python里,字典dictionary是內(nèi)置的數(shù)據(jù)類型,是個(gè)無(wú)序的存儲(chǔ)結(jié)構(gòu),每一元素是key-value對(duì):
如:dict = {'username':'password','database':'master'},其中'username'和'database'是key,而'password'和'master'是value,可以通過d[key]獲得對(duì)應(yīng)值value的引用,但是不能通過value得到key。
對(duì)于dictionnary,需知道以下幾點(diǎn)注意事項(xiàng):
a、 dictionary 的 key 是大小寫敏感的;
b、 一個(gè)dictionary中不能有重復(fù)的 key;
c、 dictionary是無(wú)序的,沒有元素順序的概念,它們只是序偶的簡(jiǎn)單排列。
2、 字典排序?qū)崿F(xiàn):
前面已說(shuō)明dictionary本身沒有順序概念,但是總是在某些時(shí)候,但是我們常常需要對(duì)字典進(jìn)行排序,怎么做呢?下面告訴你:
方法1:最簡(jiǎn)單的方法,排列元素(key/value對(duì)),然后挑出值。字典的items方法,會(huì)返回一個(gè)元組的列表,其中每個(gè)元組都包含一對(duì)項(xiàng)目——鍵與對(duì)應(yīng)的值。此時(shí)排序可以sort()方法。
def sortedDictValues1(adict): items = adict.items() items.sort() return [value for key, value in items]
方法2:使用排列鍵(key)的方式,挑出值,速度比方法1快。字典對(duì)象的keys()方法返回字典中所有鍵值組成的列表,次序是隨機(jī)的。需要排序時(shí)只要對(duì)返回的鍵值列表使用sort()方法。
def sortedDictValues1(adict): keys = adict.keys() keys.sort() return [adict[key] for key in keys]
方法3:通過映射的方法去更有效的執(zhí)行最后一步
def sortedDictValues1(adict): keys = adict.keys() keys.sort() return map(adict.get,keys)
方法4:對(duì)字典按鍵排序,用元組列表的形式返回,同時(shí)使用lambda函數(shù)來(lái)進(jìn)行;
sorted(iterable[, cmp[, key[, reverse]]]
cmp和key一般使用lambda
如:
>>> d={"ok":1,"no":2}#對(duì)字典按鍵排序,用元組列表的形式返回 >>> sorted(d.items, key=lambda d:d[0]) [('no', 2), ('ok', 1)]
對(duì)字典按值排序,用元組列表的形式返回
>>> sorted(d.items, key=lambda d:d[1]) [('ok', 1), ('no', 2)]
對(duì)字典元素的排序雖然有好多種方法,這里也沒有總結(jié)全,但如果對(duì)程序效率沒有太高要求,選擇喜歡的用就好。
希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Django將默認(rèn)的SQLite更換為MySQL的實(shí)現(xiàn)
今天小編就為大家分享一篇Django將默認(rèn)的SQLite更換為MySQL的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2019-11-11python實(shí)現(xiàn)把二維列表變?yōu)橐痪S列表的方法分析
這篇文章主要介紹了python實(shí)現(xiàn)把二維列表變?yōu)橐痪S列表的方法,結(jié)合實(shí)例形式總結(jié)分析了Python列表推導(dǎo)式、嵌套、循環(huán)等相關(guān)操作技巧,需要的朋友可以參考下2019-10-10python通過ssh-powershell監(jiān)控windows的方法
這篇文章主要介紹了python通過ssh-powershell監(jiān)控windows的方法,涉及Python操作ssh-powershell的相關(guān)技巧,需要的朋友可以參考下2015-06-06Python 實(shí)用技巧之利用Shell通配符做字符串匹配
這篇文章主要介紹了Python 實(shí)用技巧之利用Shell通配符做字符串匹配的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-08-08python函數(shù)中將變量名轉(zhuǎn)換成字符串實(shí)例
這篇文章主要介紹了python函數(shù)中將變量名轉(zhuǎn)換成字符串實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2020-05-05Pytorch中的Tensorboard與Transforms搭配使用
這篇文章主要介紹了Pytorch中的Tensorboard與Transforms搭配使用,主要是結(jié)合了前兩篇文章的的一個(gè)小練習(xí),感興趣的小伙伴可以來(lái)練習(xí)一下,希望對(duì)你的學(xué)習(xí)有所幫助2021-12-12