开发者社区> 问答> 正文

如何按值对字典进行排序?

我有一个从数据库中的两个字段读取的值字典:字符串字段和数字字段。字符串字段是唯一的,因此这是字典的键。

我可以对键进行排序,但是如何根据值进行排序?

展开
收起
游客6qcs5bpxssri2 2019-09-14 22:19:46 872 0
1 条回答
写回答
取消 提交回答
  • 不可能对字典进行排序,只能获得已排序字典的表示。字典本质上是无序的,但其他类型(如列表和元组)则不是。所以你需要一个有序的数据类型来表示排序的值,这将是一个列表 - 可能是一个元组列表。 例如,

    import operator

    x = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}

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

    sorted_x将是由每个元组中的第二个元素排序的元组列表。dict(sorted_x) == x。

    2019-09-14 22:20:32
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载