最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python OrderedDict的使用案例解析

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

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

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

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

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等幾個元素,但是使用OrderedDict會根據(jù)放入元素的先后順序進行排序。所以輸出的值是排好序的。

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

再看幾個例子:

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

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

相關(guān)文章

  • python?IO多路復(fù)用之epoll詳解

    python?IO多路復(fù)用之epoll詳解

    這篇文章主要為大家詳細介紹了python?IO多路復(fù)用之epoll,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • Python中引用傳參四種方式介紹

    Python中引用傳參四種方式介紹

    大家好,本篇文章主要講的是Python中引用傳參四種方式介紹,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2021-12-12
  • 在Python中表示一個對象的方法

    在Python中表示一個對象的方法

    這篇文章主要介紹了在Python中表示一個對象的方法,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-06-06
  • 詳解Python如何實現(xiàn)輸出顏色字體到終端界面

    詳解Python如何實現(xiàn)輸出顏色字體到終端界面

    在終端中,輸出的字體總是單一顏色的,黑底白字。但是在一些場景并不能很好的滿足輸出的需求。本文為大家介紹了Python如何實現(xiàn)輸出顏色字體到終端界面中,需要的可以參考一下
    2022-12-12
  • python使用 zip 同時迭代多個序列示例

    python使用 zip 同時迭代多個序列示例

    這篇文章主要介紹了python使用 zip 同時迭代多個序列,結(jié)合實例形式分析了Python使用zip遍歷迭代長度相等與不等的序列相關(guān)操作技巧,需要的朋友可以參考下
    2019-07-07
  • 詳解Python中的正則表達式的用法

    詳解Python中的正則表達式的用法

    這篇文章主要介紹了詳解Python中的正則表達式的用法,正則表達式在各個編程語言的學(xué)習(xí)當中都是基礎(chǔ)知識,文中給出了Python2代碼的示例,需要的朋友可以參考下
    2015-04-04
  • 一行Python3代碼實現(xiàn)解析地址信息

    一行Python3代碼實現(xiàn)解析地址信息

    在日常數(shù)據(jù)處理的過程中,有時候拿到手的是完整的地址信息,如果需要從地址信息中解析出相應(yīng)的各級行政單元名稱,方式有很多,而今天要介紹的方式只需要一行代碼即可快速實現(xiàn),快跟隨小編一起學(xué)習(xí)一下吧
    2022-05-05
  • 使用OpenCV實現(xiàn)逐幀獲取視頻圖片

    使用OpenCV實現(xiàn)逐幀獲取視頻圖片

    這篇文章主要為大家詳細介紹了如何使用OpenCV實現(xiàn)逐幀獲取視頻中的圖片用來標注,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-03-03
  • Pytorch實現(xiàn)網(wǎng)絡(luò)部分層的固定不進行回傳更新問題及思路詳解

    Pytorch實現(xiàn)網(wǎng)絡(luò)部分層的固定不進行回傳更新問題及思路詳解

    這篇文章主要介紹了Pytorch實現(xiàn)網(wǎng)絡(luò)部分層的固定不進行回傳更新,實現(xiàn)思路就是利用tensor的requires_grad,每一個tensor都有自己的requires_grad成員,值只能為True和False,具體內(nèi)容詳情跟隨小編一起看看吧
    2021-08-08
  • 刪除PyCharm解釋器的方法步驟

    刪除PyCharm解釋器的方法步驟

    這篇文章主要給大家介紹了關(guān)于刪除PyCharm解釋器的方法步驟,PyCharm解釋器是指在PyCharm集成開發(fā)環(huán)境中用于運行和調(diào)試Python代碼的解釋器,需要的朋友可以參考下
    2023-09-09

最新評論

乡城县| 凤台县| 阳城县| 当雄县| 慈溪市| 蓝田县| 漾濞| 原平市| 澄城县| 六盘水市| 高要市| 蒲城县| 潮安县| 措勤县| 平江县| 武平县| 辽宁省| 长葛市| 敦化市| 华池县| 方城县| 蓬溪县| 合作市| 织金县| 高陵县| 桃江县| 湘乡市| 霍山县| 南昌市| 张家港市| 右玉县| 江永县| 无锡市| 涟源市| 清涧县| 十堰市| 县级市| 石景山区| 肥城市| 丹阳市| 广饶县|