• 技术文章 >后端开发 >Python教程

    python如何通过列表中字典的值对列表进行排序

    silencementsilencement2019-05-25 16:21:18原创13491

    一. 按字典值排序(默认为升序)

    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中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    上一篇:python怎么限制浮点型到小数点后两位 下一篇:利用Python反向输出一个字符串
    大前端线上培训班

    相关文章推荐

    • Python列表中的数组如何引用• Python列表中函数&方法详解• Python列表的长度调节方法(附代码)

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网