• Python 序列的排序,包括字典排序、列表排序、升序、降序


    列表的排序

    1、升序、降序采用sorted函数,返回排序后的结果

    list1=[7,2,55,312,32]
    #升序排序
    list2asc=sorted(list1)
    print("升序排序结果:")
    print(list2asc)
    
    #降序排序
    list3desc=sorted(list1,reverse=True)
    print("降序排序结果:")
    print(list3desc)

    2、逆序采用reversed函数,返回逆序的结果

    #逆序输出
    list1=[7,2,55,312,32]
    list4rev=list(reversed(list1))
    print("逆序排序结果:")
    print(list4rev)

    3、列表的复杂排序

    #复杂列表
    list5=[["老刘",40],["老张",60],["老李",47]]
    #升降序需要使用key和lambda表达式
    #升序
    list6asc=sorted(list5,key=lambda list5:list5[1])
    print(list6asc)
    #降序
    list7desc=sorted(list5,key=lambda list5:list5[1],reverse=True)
    print(list7desc)

    字典的排序

    1、采用魔术属性排序,对字典的键进行排序,按照键来进行升序或者降序

    #升序
    dic1={"d2":25,"d1":76,"d3":115}
    dic2asc=sorted(dic1,key=dic1.__getitem__)
    for i in dic2asc:
        print(i,dic1[i])
    #降序
    dic1={"d2":25,"d1":76,"d3":115}
    dic3desc=sorted(dic1,key=dic1.__getitem__,reverse=True)
    for i in dic3desc:
        print(i,dic1[i])

    2、items方法,结合lambda表达式排序,默认输出的是列表的结果,可用dict函数转化为字典

    #使用item方法排序
    #升序
    dic1={"d2":25,"d1":76,"d3":115}
    dic4asc=dict(sorted(dic1.items(),key=lambda dic1:dic1[1]))
    print(dic4asc)
    #降序
    dic1={"d2":25,"d1":76,"d3":115}
    dic5desc=dict(sorted(dic1.items(),key=lambda dic1:dic1[1],reverse=True))
    print(dic5desc)
  • 相关阅读:
    Hbase 性能改进
    HBase总结(十一)hbase Java API 介绍及使用示例
    Java中如何遍历Map对象的4种方法
    Jsp分页实例---假分页
    Jsp分页实例---真分页
    Java正则表达式
    平均时间复杂度为O(nlogn)的排序算法
    常见排序算法--简单排序
    [kuangbin带你飞]专题一 简单搜索
    [kuangbin带你飞]专题一 简单搜索
  • 原文地址:https://www.cnblogs.com/mrkr/p/12831734.html
Copyright © 2020-2023  润新知