python的sorted函数

python的sorted函数sorted很简单,没太多好写的,只是给自己做个笔记。sorted接受三个参数,返回一个排序之后的list。第一个接受一个可迭代的对象(因为sorted实现了迭代协议,所以接受的参数不一定需要l

大家好,又见面了,我是你们的朋友全栈君。

sorted很简单,没太多好写的 ,只是给自己做个笔记。

sorted接受三个参数,返回一个排序之后的list。

第一个接受一个可迭代的对象(因为sorted实现了迭代协议,所以接受的参数不一定需要list,可以迭代的对象就可以,也是duck typing),返回一个排序之后的列表。

第二个接受一个布尔值,选择是否反转排序结果。

第三个接受一个回调函数,这个回调函数只能有一个参数(如果有多个参数,请用偏函数),根据这个函数的返回值进行排序。

这个返回值并不限定于这个可迭代对象的某个的元素,比如可以将每个元素中的某个key对应的value作为排序的依据,也可以根据其他结果,比如绝对值进行排序。

上个很简单的实例代码:

完整代码: https://github.com/blackmatrix7/python-learning/blob/master/function_/sorted.py

__author__ = 'blackmatrix'

temp_list = [4, -5, 7, 1, -3, 2, -9]

if __name__ == '__main__':
    print(sorted(temp_list))
    # 反转
    print(sorted(temp_list, reverse=True))
    # 根据绝对值排序
    print(sorted(temp_list, key=lambda key: abs(key)))

输出结果

[-9, -5, -3, 1, 2, 4, 7]
[7, 4, 2, 1, -3, -5, -9]
[1, 2, -3, 4, -5, 7, -9]

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155993.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月5日 下午5:16
下一篇 2022年7月5日 下午5:16


相关推荐

  • Tomcat报错—Invalid keystore format ,tomcat启动报错[通俗易懂]

    今天在修改了一些代码,然后重新放到服务器上,启动服务器的时候报这个错误!我就很纳闷,修改的文件里面根本就没有涉及到tomcat配置文件的内容怎么会出现这样子内容呢?想了很久也网上百度了很多,很多博客提供的解答都没有解决我的问题,然后我们主管过来看了一会,给出了指导性的建议,去看tomcat下的conf/server.xml 文件。然后逐步排查。

    2022年2月24日
    84
  • Redis常用命令(超详细整理)

    Redis常用命令(超详细整理)服务器相关命令 key 相关命令 String 字符串 List 列表 Set 集合 Hash 哈希 Zset 有序集合

    2026年3月19日
    3
  • smtp邮件服务器的作用,smtp服务器是什么意思(smtp服务器作用及使用指南)[通俗易懂]

    smtp邮件服务器的作用,smtp服务器是什么意思(smtp服务器作用及使用指南)[通俗易懂]smtp服务器是什么意思SMTP的全称是“SimpleMailTransferProtocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP协议属于TCP/IP协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地,SMTP服务器就是遵循SMTP协议的发送邮件服务器,不同邮件服务商均有对应的smtp服务器地址,并且这个地址会提供给大家…

    2026年4月17日
    5
  • Linux抓包工具[通俗易懂]

    Linux抓包工具[通俗易懂]字符界面的的抓包工具—-tcpdump可用选项-A以ASCII格式打印出所有分组,并将链路层的头最小化。-c在收到指定的数量的分组后,tcpdump就会停止。-C在将一个原始分组写入文件之前,检查文件当前的大小是否超过了参数file_size中指定的大小。如果超过了指定大小,则关闭当前文件,然后在打开一个新的文件。参数file_size的单位是兆字节(是1,000,000字节,而不是1,048,576字节)。-d将匹配信息包的代码以人们能够理解的汇编格式给出。-dd将

    2022年10月14日
    9
  • springboot配置文件的属性集[通俗易懂]

    springboot配置文件的属性集[通俗易懂]springboot配置文件的属性集

    2022年4月22日
    129
  • 三次握手,四次挥手,为什么是三次握手四次挥手

    三次握手,四次挥手,为什么是三次握手四次挥手三次握手 四次挥手 为什么是三次握手四次挥手四次挥手 TCP 的连接的拆除需要发送四个包 因此称为四次挥手 客户端或服务器均可主动发起挥手动作 由于 TCP 连接时全双工的 因此每个方向都必须单独进行关闭 这个原则是当一方完成他的数据发送任务后就能发送一个 FIN 来终止这个方向的连接 收到一个 FIN 只意味着这一方向上没有数据流动 一个 TCP 连接在收到一个 FIN 后仍能发送数据 首先进行关闭的一方将执行主动关闭 而另一方执行被动关闭 这是因为服务端的 LISTEN 状态下的 socket 当收到

    2026年3月16日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号