欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python OrderedDict的使用案例解析

 更新時(shí)間:2019年10月25日 14:19:49   作者:北京流浪兒  
這篇文章主要介紹了Python OrderedDict的使用案例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

這篇文章主要介紹了Python OrderedDict的使用案例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

很多人認(rèn)為python中的字典是無(wú)序的,因?yàn)樗前凑説ash來(lái)存儲(chǔ)的,但是python中有個(gè)模塊collections(英文,收集、集合),里面自帶了一個(gè)子類(lèi)

OrderedDict,實(shí)現(xiàn)了對(duì)字典對(duì)象中元素的排序。請(qǐng)看下面的實(shí)例:

import collections
print "Regular dictionary"
d={}
d['a']='A'
d['b']='B'
d['c']='C'
for k,v in d.items():
  print k,v

print "\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 dictionary
a A
c C
b B

Order dictionary
a A
b B
c C
1 1
2 2

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

OrderedDict對(duì)象的字典對(duì)象,如果其順序不同那么Python也會(huì)把他們當(dāng)做是兩個(gè)不同的對(duì)象,請(qǐng)看事例:

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 == d3

print '\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:
True

OrderedDict:
False

再看幾個(gè)例子:

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)])

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python基礎(chǔ)之畫(huà)圖神器matplotlib

    Python基礎(chǔ)之畫(huà)圖神器matplotlib

    這篇文章主要介紹了python基礎(chǔ)之畫(huà)圖神器matplotlib,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python的小伙伴們有一定的幫助,需要的朋友可以參考下
    2021-04-04
  • python 迭代器和iter()函數(shù)詳解及實(shí)例

    python 迭代器和iter()函數(shù)詳解及實(shí)例

    這篇文章主要介紹了python 迭代器和iter()函數(shù)詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • Python合并pdf文件的工具

    Python合并pdf文件的工具

    PDF文件合并工具是非常好用可以把多個(gè)pdf文件合并成一個(gè),本文以5個(gè)pdf文件為例給大家分享具體操作方法,通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2021-07-07
  • Pytorch之Tensor和Numpy之間的轉(zhuǎn)換的實(shí)現(xiàn)方法

    Pytorch之Tensor和Numpy之間的轉(zhuǎn)換的實(shí)現(xiàn)方法

    這篇文章主要介紹了Pytorch之Tensor和Numpy之間的轉(zhuǎn)換的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • 使用Python繪制圣誕樹(shù)教程詳解(附源代碼)

    使用Python繪制圣誕樹(shù)教程詳解(附源代碼)

    又是一年一度的圣誕節(jié)快到了,提到圣誕節(jié),就不得不提圣誕樹(shù),所以本文我們將使用Python繪制一棵圣誕樹(shù),文中有詳細(xì)的代碼講解,具有一定的參考價(jià)值,需要的朋友可以參考下
    2023-12-12
  • Python標(biāo)準(zhǔn)庫(kù)shutil用法實(shí)例詳解

    Python標(biāo)準(zhǔn)庫(kù)shutil用法實(shí)例詳解

    這篇文章主要介紹了Python標(biāo)準(zhǔn)庫(kù)shutil用法,結(jié)合實(shí)例形式分析了shutil庫(kù)針對(duì)文件與文件夾各種常見(jiàn)操作技巧與相關(guān)使用注意事項(xiàng),需要的朋友可以參考下
    2018-08-08
  • Python3 sort和sorted用法+cmp_to_key()函數(shù)詳解

    Python3 sort和sorted用法+cmp_to_key()函數(shù)詳解

    這篇文章主要介紹了Python3 sort和sorted用法+cmp_to_key()函數(shù)詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Python斷言assert的用法代碼解析

    Python斷言assert的用法代碼解析

    這篇文章主要介紹了Python斷言assert的用法代碼解析,分享了相關(guān)代碼示例,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02
  • pandas中計(jì)算兩列相乘實(shí)例

    pandas中計(jì)算兩列相乘實(shí)例

    這篇文章主要介紹了pandas中計(jì)算兩列相乘實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Numpy的np.random隨機(jī)模塊詳解

    Numpy的np.random隨機(jī)模塊詳解

    這篇文章主要介紹了Numpy的np.random隨機(jī)模塊詳解,平時(shí)都會(huì)使用到隨機(jī)模塊,一般是torch.random或者是numpy.random,有或者是直接使用ramdom這個(gè)python內(nèi)置的工具包,那么下面就簡(jiǎn)單記錄一下numpy.random常用的函數(shù),需要的朋友可以參考下
    2023-08-08

最新評(píng)論