嗨嘍,大家好呀~這里是愛看美女的茜茜吶
有序字典和通常字典類似梁剔,只是它可以記錄元素插入其中的順序入桂,而一般字典是會以任意的順序迭代的。
普通字典:
d1={}
d1['a']='A'
d1['b']='B'
d1['c']='C'
d1['d']='D' #此時的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é)果可以看出對普通字典進行遍歷碟联,輸出結(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)鲤孵,有序字典可以按字典中元素的插入順序來輸出。
上面兩個例子之所以字典中插入元素辰如,而不是一開始就將字典中的元素定義好普监,是因為有序字典的作用只是記住元素插入順序并按順序輸出。
如果有序字典中的元素一開始就定義好了琉兜,后面沒有插入元素這一動作凯正,那么遍歷有序字典,其輸出結(jié)果為空豌蟋,因為缺少了有序插入這一條件廊散,所以此時有序字典就失去了作用,所以有序字典一般用于動態(tài)添加并需要按添加順序輸出的時候梧疲。
舉例說明:
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í)到一點知識~
躲起來的星星??也在努力發(fā)光幌氮,你也要努力加油(讓我們一起努力叭)缭受。