python3 字典的排序

2021-09-22 16:48:39 字數 1059 閱讀 8472

先看一下,直接用sorted()排序的情況。

dict1=

dict2 = sorted(dict1)

print(dict2)

結果:

['a', 'd', 'e', 'f']

sorted()預設是對字典的鍵,從小到大進行排序

當然我們也可以先拿到所有的key,然後再對key排序

dict1=

list1= sorted(dict1.keys(),reverse=true)

print(list1) # 結果:['f', 'e', 'd', 'a']

2.對value進行排序

同樣,用dict1.values()得到所有的values,然後對value排序

dict1=

list1= sorted(dict1.values())

print(list1) #結果:[2, 3, 4, 8]

設值reverse=true 進行反向排序

也可以用dict1.items(),得到包含鍵,值的元組

由於迭代物件是元組,返回值自然是元組組成的列表

這裡對排序的規則進行了定義,x指元組,x[1]是值,x[0]是鍵

dict1=

list1= sorted(dict1.items(),key=lambda x:x[1])

print(list1)

結果:

[('a', 2), ('e', 3), ('d', 4), ('f', 8)]
對鍵進行排序:

dict1=

list1= sorted(dict1.items(),key=lambda x:x[0])

print(list1)

結果:

[('a', 2), ('d', 4), ('e', 3), ('f', 8)]

python3字典排序

說實話,對字典進行排序,這個說法本身就有問題,實際上,你無法對操縱字典說,字典,在你的底層實現裡,你就得按照我指定的順序來排列,如果這樣的話,字典就喪失了它的速度優勢,它也不是乙個字典了.好了,廢話不多說,我這裡稍微記錄一下我的做法吧.python2裡面原來是有dict.iteritems這樣乙個函...

python3字典遍歷 python3字典遍歷

python版本 python3.7 info infog.get name 得到字典info中name的值 info.keys 得到字典info中所有的鍵,結果是乙個物件 dict keys name age 需要注意在python2中該操作得到的是乙個列表 遍歷key for temp in i...

python3字典的排序

dict1 1 取字典的所有鍵,所有的值,利用dict1.keys dict1.vaules 2 同時取字典的鍵 值,dict1.items 3 對字典進行排序 3.1 sorted 預設是對字典的鍵,從小到大進行排序 dict1 dict2 sorted dict1 print dict2 結果 ...