python基礎(chǔ)教程之有序字典

嗨嘍,大家好呀~這里是愛看美女的茜茜吶

有序字典和通常字典類似,只是它可以記錄元素插入其中的順序,而一般字典是會以任意的順序迭代的。

普通字典:

d1={}
d1['a']='A'
d1['b']='B'
d1['c']='C'
d1['d']='D'   #此時(shí)的d1 = {'a':'A','b':'B','c':'C','d':'D'}
for k,v in d1.items():
    print (k,v)

輸出結(jié)果為:

 a A
 c C
 b B
 d D

由上面的結(jié)果可以看出對普通字典進(jìn)行遍歷,輸出結(jié)果是無序的。

下面是有序字典(需要導(dǎo)入collections包):

import collections
d1={}
d1=collections.OrderedDict()  #將普通字典轉(zhuǎn)換為有序字典
d1['a']='A'
d1['b']='B'
d1['c']='C'
d1['d']='D'
for k,v in d1.items():
    print (k,v)

對比兩種輸出結(jié)果,不難發(fā)現(xiàn),有序字典可以按字典中元素的插入順序來輸出。

上面兩個(gè)例子之所以字典中插入元素,而不是一開始就將字典中的元素定義好,是因?yàn)橛行蜃值涞淖饔弥皇怯涀≡夭迦腠樞虿错樞蜉敵觥?/p>

如果有序字典中的元素一開始就定義好了,后面沒有插入元素這一動作,那么遍歷有序字典,其輸出結(jié)果為空,因?yàn)槿鄙倭擞行虿迦脒@一條件,所以此時(shí)有序字典就失去了作用,所以有序字典一般用于動態(tài)添加并需要按添加順序輸出的時(shí)候。

舉例說明:

 import collections
 d2 = {'a':'A','b':'B','c':'C','d':'D'}
 d2=collections.OrderedDict()  #將普通字典轉(zhuǎn)換為有序字典
 for k,v in d2.items():
     print (k,v)

其輸出結(jié)果為空。

尾語

感謝你觀看我的文章吶~本次航班到這里就結(jié)束啦 ??

希望本篇文章有對你帶來幫助 ??,有學(xué)習(xí)到一點(diǎn)知識~

躲起來的星星??也在努力發(fā)光,你也要努力加油(讓我們一起努力叭)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容