zoukankan      html  css  js  c++  java
  • 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)
  • 相关阅读:
    『C#基础』数据库死锁笔记
    『C#基础』IIS的权限问题
    『C#基础』调用CMD的一个小工具
    『C#基础』获取系统图标的一个操作类
    『程序人生』其实,做软件与打游戏是一样一样的……
    『C#基础』C#调用存储过程
    『Linux』Arch Linux与VirtualBox的结合
    sql server 触发器简单学习
    用触发器替换原来的insert
    食物增肥一方
  • 原文地址:https://www.cnblogs.com/mrkr/p/12831734.html
Copyright © 2011-2022 走看看