1. 程式人生 > >[PY3]——字典排序問題

[PY3]——字典排序問題

int ict 插入 註意 logs port 鏈表 cnblogs item

OrderedDict 有序字典

from collections import OrderedDict

d={}
d[0]=3;d[6]=1;d[3]=1    //仔細看插入順序
for k,v in d.items():
    print(k,v)          //輸出的時候dict字典會按照key順序來排序
0 3
3 1
6 1

od=OrderedDict()
od[0]=3;od[6]=1;od[3]=1   //但同樣的插入順序下
for k,v in od.items():
    print(k,v)            //OrdereDict會保持插入順序
0 3 6 1 3 1

需要註意的是,一個 OrderedDict 的大小是一個普通字典的兩倍,因為它內部維護著另外一個鏈表,要註意內存消耗問題

[PY3]——字典排序問題