python 使用值來排序乙個字典的方法

2022-09-27 08:36:09 字數 1299 閱讀 9555

下面先看下python 使用值排序字典的方法

in [8]: a=

in [9]: import operator

in [10]: sorted(a.items(),key=operator.itemgetter(1))

out[10]: [('c', 4), ('x', 11), ('y', 22)]

in [11]: a=

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

out[12]: [('c', 4), ('x', 11), ('y', 22)]

sort 方法會就地排序列表,不會把原列表複製乙份

sorted 會新建乙個列表作為返回值,接受任何形式的可迭代物件作為引數

sorted 和 sort的可選引數:

reverse  預設為false,如果設定為true則降序排列

key 這個是一程式設計客棧個只有乙個引數的函式,會應用到序列中的每乙個元素上,如果key=len,就會按照字串的長度排序

補充:下面看下python字典按值排序的方法

法1: (預設公升序排序,加  reverse = true 指定為降序排序)

# sorted的結果是乙個list

dic1sortlist = sorted( dic1.items(),key = lambda = true)

法2:import operator

sorted_x = sorted(d.items(),key = operator.itemgetter(1))

法3:包含字典dict的列表list的排序方法與dict的排序類似,如下:

x = [, ]

sorted_x = sorted(x, key=operator.itemgetter('name'))

print sorted_x

#[, ]

sorted_x = sorted(x, key=operator.itemgetter('name'), reverse=true)

print sorted_x

#[, ]

sorted_x = sorted(x, key=lambda x : x['name'])

print sorted_x

#[, ]

sorted_x = sorted(x, key=lambda x : x['name'], reverse=true)

print sorted_x

#[, ]

總結本文標題: python 使用值來排序乙個字典的方法

本文位址:

python技巧 使用值來排序乙個字典

in 8 a in 9 import operator in 10 sorted a.items key operator.itemgetter 1 out 10 c 4 x 11 y 22 in 11 a in 12 sorted a.items key lambda x x 1 out 12 c...

累就乙個字

最近也學了一把跳槽,新公司坐落在北師大校園裡,環境是一流,可惜就是遠過頭了,一天就要浪費兩個小時在車上,比以前還慘。值得安慰的是公司坐落在學校裡,每天在校園裡看到那些青春活力的學生,也會覺得自己年輕了好幾歲,感覺非常棒。最重要的是北師大靚女成群,真是大飽眼福啊 別鄙視咱,哪個男人不喜歡欣賞美女,除非...

愛就乙個字

撥開天空的烏雲 像藍絲絨一樣美麗 我為你翻山越嶺 卻無心看風景 我想你身不由己 每個念頭有新的夢境 但願你沒忘記 我永遠保護你 不管風雨的打擊 全心全意 兩個人相互輝映 光芒勝過夜晚繁星 我為你翻山越嶺 卻無心看風景 我想你鼓足勇氣 憑愛的地圖散播訊息 但願你沒忘記 我永遠保護你 從此不必再流浪找尋...