zoukankan      html  css  js  c++  java
  • sort方法和sorted()函数

    sort方法和sorted()函数的区别:

    相同点:都能完成排序操作。

    不同点:

    (1)使用sort()方法对list排序会修改list本身,不会返回新list,sort()不能对dict字典进行排序;

    (2)sorted方法对可迭代的序列排序生成新的序列,对dict排序默认会按照dict的key值进行排序,

    最后返回的结果是一个对key值排序好的list;

    (3)sorted对tuple, dict依然有效,而sort不行。

    sort方法

    类似于reverse,sort方法也是List(列表)内建的函数,主要用于列表元素的排序,其语法为:

    #key可以指定列表元素比较时用到的函数
    #reverse默认时False(升序),指定为True时降序排列
    List.sort(key=None,reverse=False)




    d = {"a": 56, "b": 23, "f": 41, "c": 90,"d": 12, "e": 64, "g": 88}
    y=sorted(d.items())
    print(y)
    m=sorted(d.items(),key=lambda x:x[1])#按字典的key值进行排序
    print(m)
    a=sorted(d.items(),key=lambda x:x[1],reverse = True) #副本
    print(a)
    # 第一个参数是需要排序的列表,第二个参数是指定key(列表中每一项的第几个元素)来进行排序。
    # d.items()返回的是一个列表
    # [('a', 56), ('b', 23), ('c', 90), ('d', 12), ('e', 64), ('f', 41), ('g', 88)]
    # sorted会对d.items()这个list进行遍历,把list中的每一个元素,
    # 也就是每一个tuple()当做x传入匿名函数lambda x:x[1],
    # 函数返回值为x[1], 也就是key=x[1]=tuple()[1]=('a', 56)[1],
    # 也就是说按照里表中每个项的第二个元素进行排序(第一个是x[0])
    回忆滋润坚持
  • 相关阅读:
    Oracle数据库容灾备份技术探讨
    asp.net 生成、解析条形码和二维码
    推荐一些C#相关的网站、资源和书籍
    内部集群的 DNS server 搭建
    Nginx 负载均衡
    webpack技巧:动态批量加载文件
    Mock.js使用
    @vue/cli 项目编译重复命中缓存问题解析
    用React hooks实现TDD
    从 React 切换到 Vue.js
  • 原文地址:https://www.cnblogs.com/james5d/p/14199786.html
Copyright © 2011-2022 走看看