最近的django開發中用到了有序字典,所以研究了一下,以下。
示例:有序字典和通常字典類似,只是它可以記錄元素插入其中的順序,而一般字典是會以任意的順序迭代的。
普通字典:
1 d1={}輸出結果為:2 d1['a']='a'
3 d1['b']='b'
4 d1['c']='c'
5 d1['d']='d' #此時的d1 =
6 for k,v in d1.items():
7 print k,v
1 a a由上面的結果可以看出對普通字典進行遍歷,輸出結果是無序的。2 c c
3 b b
4 d d
下面是有序字典(需要匯入collections包):
1 import collections輸出結果為:2 d1={}
3 d1=collections.ordereddict() #將普通字典轉換為有序字典
4 d1['a']='a'
5 d1['b']='b'
6 d1['c']='c'
7 d1['d']='d'
8 for k,v in d1.items():
9 print k,v
1 a a對比兩種輸出結果,不難發現,有序字典可以按字典中元素的插入順序來輸出。2 b b
3 c c
4 d d
上面兩個例子之所以字典中插入元素,而不是一開始就將字典中的元素定義好,是因為有序字典的作用只是記住元素插入順序並按順序輸出。
如果有序字典中的元素一開始就定義好了,後面沒有插入元素這一動作,那麼遍歷有序字典,其輸出結果為空,因為缺少了有序插入這一條件,所以此時有序字典就失去了作用,所以有序字典一般用於動態新增並需要按新增順序輸出的時候。
舉例說明:
1 import collections其輸出結果為空。2 d2 =
3 d2=collections.ordereddict() #將普通字典轉換為有序字典
4 for k,v in d2.items():
5 print k,v
Python有序字典
最近的django開發中用到了有序字典,所以研究了一下,以下。示例 有序字典和通常字典類似,只是它可以記錄元素插入其中的順序,而一般字典是會以任意的順序迭代的。普通字典 1 d1 2 d1 a a 3 d1 b b 4 d1 c c 5 d1 d d 此時的d1 6 for k,v in d1.it...
python有序字典
最近的django開發中用到了有序字典,所以研究了一下,以下。示例 有序字典和通常字典類似,只是它可以記錄元素插入其中的順序,而一般字典是會以任意的順序迭代的。普通字典 由上面的結果可以看出對普通字典進行遍歷,輸出結果是無序的。下面是有序字典 需要匯入collections包 對比兩種輸出結果,不難...
Python有序字典 OrderedDict
有序字典和普通的dict基本上是相似的,只有一點不同,那就是有序字典中鍵值對的順序會保留插入時的順序。有序字典的建立方法和普通的dict類似,不過由於多了保留順序的功能,因此在使用可迭代物件建立有序字典時,可以對它先排個序,讓建立出來的字典元素也是有序的 data a 1 b 3 c 2 od co...