一. 依字典值排序(預設為升序)
x = {1:2, 3:4, 4 :3, 2:1, 0:0}
1. sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1)) print sorted_x
輸出結果:[(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)]
如果要降序排序,可以指定reverse=True
#2. sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1), reverse=True) print sorted_x
輸出結果:[(3, 4), (4, 3), (1, 2), (2 , 1), (0, 0)]
二. 或直接使用list的reverse方法將sorted_x順序反轉
sorted_x.reverse()
三. 更常用的方法是,用lambda表達式
sorted_x = sorted(x.iteritems(), key=lambda x : x[1] ) print sorted_x
輸出結果:[(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)]
#orted_x = sorted( x.iteritems(), key=lambda x : x[1], reverse=True) print sorted_x
輸出結果:[(3, 4), (4, 3), (1, 2), (2, 1), (0, 0)]
以上是python如何透過列表中字典的值對列表進行排序的詳細內容。更多資訊請關注PHP中文網其他相關文章!