都知道sorted本身的排序规则是从小到大

如果我们想要重新定义一个排序规则,可以设置参数如: key=lambda x:abs(x),这样他们就按照绝对值的大小进行排序

如果我们想要定义两个排序规则呢?

如: lst=[7,-8,5,4,0,-2,-5]我们想按照1.正数在前负数在后,2.正数从小到大3.负数从大到小   这样的规则排序这时应设置多个规则sorted(lst,key=lambda x:(x<0,abs(x)))

详解:
1.正数在前负数在后 x<0 相当于按降序排列,即大于等于0的在前,小于0的在后 这样lst就分成了两部分,大于0的和小于等于0的,然后再按照绝对值的大小进行排序,sorted默认升序,reverse=True  反转

转载于:https://www.cnblogs.com/Bin-y/p/10946669.html

sorted排序详解相关推荐

  1. python中sorted的用法append_python sorted()排序详解

    排序,在编程中经常遇到的算法,我也在几篇文章中介绍了一些关于排序的算法.有的高级语言内置了一些排序函数.本文讲述Python在这方面的工作.供使用 内置函数sorted()/list.sort()的使 ...

  2. Python 之 sorted()排序详解 适用于任意可迭代对象比如列表,字典等

    详细解释一下函数sorted的具体用法: 对字典: 1 >>> a = {3: '三', 5: '五', 8: '八', 1: '一'} 2 >>> b = sor ...

  3. pandas dataframe中的列进行重新排序、倒排、正排、自定义排序详解及实践

    pandas dataframe中的列进行重新排序,pandas dataframe列重排.倒排.正排.自定义排序详解及实践 实施数据构建: import pandas as pd import nu ...

  4. 希尔排序基础java代码_java 算法之希尔排序详解及实现代码

    摘要:这篇Java开发技术栏目下的"java 算法之希尔排序详解及实现代码",介绍的技术点是"希尔排序详解.实现代码.希尔排序.Java.实现.代码",希望对大 ...

  5. Linux 中使用 sort 指令分组排序详解

    Linux 中使用 sort 指令分组排序详解 sort 中进行分组排序主要用到的选项为 -k,此文,我们着重于该选项的使用方式,用到的其它选项不做解释,有兴趣的同学可以查看帮助文档 1. 数据准备 ...

  6. c语言排序常用问题,【更新中】【排序详解】解决排序问题(以C语言为例)

    [更新中][排序详解]解决排序问题(以C语言为例) [更新中][排序详解]解决排序问题(以C语言为例) 文章目录 排序的相关概念 简单排序 一.插入排序: (一)插入排序基本思想 (二)插入排序基本操 ...

  7. 八大排序 详解(下)——指向函数的指针 的使用

    <八大排序 详解(上)> <八大排序 详解(中)> 紧接前两篇博文,我们这篇博文所要讲解的是我们前两篇博文编写的所有函数的使用.生成随机数组的函数的讲解以及一种及其凶悍的调用方 ...

  8. 【排序】什么都能排的C语言qsort排序详解【超详细的宝藏级别教程】深度理解qsort排序

    [排序]什么都能排的C语言qsort排序详解[超详细的宝藏级别教程]深度理解qsort排序 作者: @小小Programmer 这是我的主页:@小小Programmer 在食用这篇博客之前,博主在这里 ...

  9. shell编程数组与冒泡算法排序详解

    shell编程数组与冒泡算法排序详解 一 数组的四种表达方式 二 数组的增删改查操作 三 数组传参 3.1 主程序向函数传数组参数 3.2 从函数返回数组到主程序 四 冒泡算法排序 一 数组的四种表达 ...

最新文章

  1. Linux 使用者身份與群組記錄的檔案
  2. tornado缓存技术
  3. 通过WebService调用SQLXML(SQL Server 2005) [ZT]
  4. js和Java分别正则匹配小数点后多余的0
  5. Rhythmk 学习 Hibernate 02 - Hibernate 之 瞬时状态 离线状态 持久化状态 三状态
  6. python基础代码-python基础,python基础代码大全
  7. 1核1g服务器开多少虚拟主机,1核1g服务器开多少虚拟主机
  8. Android的IPC机制Binder
  9. PHP替换回车换行的三种方法
  10. 南通大学python期末考试试卷答案_南通大学2015-2016年1学期《软工》作业点评总结...
  11. c语言发展过程,C语言发展史
  12. Unity 5.6 UGUI 按钮被遮挡
  13. PyTorch:模型层和nn container
  14. cad道路里程桩号标注_甲级设计院CAD制图技巧与画法讲解! 超实用,值得你收藏~...
  15. 英读廊——如果运动引起摩擦,摩擦生热,为什么风吹得越快却越冷
  16. 3步上架iOS APP【2022最新教程】
  17. 赵铁安烧饼机器人_洛阳市民发明打烧饼机器人
  18. 程序猿职业规划-分析篇
  19. matlab学习笔记-绘图
  20. Linux下安装RTX腾讯通

热门文章

  1. 4.1 集成运算放大电路概述
  2. stm32时钟问题简单介绍
  3. 驼峰命名法(CamelCase)和下划线命名法(UnderScoreCase)之间的转换
  4. WPS如何并排放置两张图片_WPS表格:如何批量将所有图片大小修改成一致?
  5. 【xlwings api语言参考】Range.AutoFill 方法
  6. Vue.js中的v-model指令(双向绑定)
  7. (王道考研计算机网络)第一章计算机网络体系结构-第一节计算机网络概述1:计网的概念、组成、功能和分类
  8. Notification 加入本地的声音文件
  9. FSM——squirrel状态机使用
  10. 基于SpringBoot的高并发秒杀(限时秒杀)