Python - 字典按值(value)排序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python - 字典按值(value)排序相关的知识,希望对你有一定的参考价值。

字典安值排序是一个伪命题.
字典本身是不能被排序的, 已经依照关键字(key)排序, 可是列表(list)和元组(tuple)能够排序, 所以字典须要转换列表后排序.

import operator
x = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}
sorted_x = sorted(x.items(), key=operator.itemgetter(1))

则是转换列表后的排序, dict(sorted_x) == x, 列表转换字典.


代码

# -*- coding: utf-8 -*-

import operator

x = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}
# 依据值排序
sorted_x = sorted(x.items(), key=operator.itemgetter(1))

print ‘x = ‘ + str(x)
print ‘sorted_x = ‘ + str(sorted_x)
print ‘dict(sorted_x) = ‘ + str(dict(sorted_x))

x = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}
sorted_x = sorted(x.items(), key=operator.itemgetter(0))

print ‘x = ‘ + str(x)
print ‘sorted_x = ‘ + str(sorted_x)
print ‘dict(sorted_x) = ‘ + str(dict(sorted_x))

"""
输出:
x = {0: 0, 1: 2, 2: 1, 3: 4, 4: 3}
sorted_x = [(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)]
dict(sorted_x) = {0: 0, 1: 2, 2: 1, 3: 4, 4: 3}
x = {0: 0, 1: 2, 2: 1, 3: 4, 4: 3}
sorted_x = [(0, 0), (1, 2), (2, 1), (3, 4), (4, 3)]
dict(sorted_x) = {0: 0, 1: 2, 2: 1, 3: 4, 4: 3}
"""



以上是关于Python - 字典按值(value)排序的主要内容,如果未能解决你的问题,请参考以下文章

python按值的长度对字典进行排序

使用 tie 元素按值排序字典不应更改其顺序

python怎么对字典进行排序

如何按值对 Python 字典进行排序? [复制]

python 按值排序字典

python 按值计数对字典进行排序