普通字典和OrderedDict的區別python

2021-10-02 15:09:13 字數 997 閱讀 3819

# 普通字典是無序的 也就是不會按放入元素的先後順序排序

d={}

d['a']='a'

d['b']='b'

d['c']='c'

for k,v in d.items():

print(k,v)

# a a

# b b

# c c

print("-----")

# ordereddict,實現了對字典物件中元素的排序

# 使用ordereddict會根據放入元素的先後順序進行排序

from collections import ordereddict

a=ordereddict()

# import collections

# a=collections.ordereddict()

a['a']='a'

a['c']='c'

a['e']='e'

a['d']='d'

a['b']='q'

for k,v in a.items():

print(k,v)

# a a

# c c

# e e

# d d

# b q

# 字典a按key排序

a=ordereddict(sorted(a.items(),key=lambda x:x[0]))

print(a)

# ordereddict([('a', 'a'), ('b', 'q'), ('c', 'c'), ('d', 'd'), ('e', 'e')])

# 字典a按value排序

a=ordereddict(sorted(a.items(),key=lambda x:x[1]))

print(a)

# ordereddict([('a', 'a'), ('c', 'c'), ('d', 'd'), ('e', 'e'), ('b', 'q')])

Python有序字典 OrderedDict

有序字典和普通的dict基本上是相似的,只有一點不同,那就是有序字典中鍵值對的順序會保留插入時的順序。有序字典的建立方法和普通的dict類似,不過由於多了保留順序的功能,因此在使用可迭代物件建立有序字典時,可以對它先排個序,讓建立出來的字典元素也是有序的 data a 1 b 3 c 2 od co...

python 字典和巢狀字典排序

正常字典的排序我們都知道,像這樣 a b sorted a.items key lambda x x 1 就會輸出如下結果 101,0 100,1 102,2 那如果是巢狀字典呢,比如 a 101 102 實際上是類似的,我們只要理解了上面這個key的含義,lambda可以理解為乙個函式,輸出為x ...

陣列和字典

陣列 注 oc相容c的陣列,用於儲存基礎資料型別 int,char,float 資料和復合資料型別 int int 10 資料 使用oc的陣列物件儲存類的物件。注 nsmutablearray nsarray 1.nsarray的方法nsmutablearray都可以用 2.傳參需要傳入nsarra...