python排序获得秩(index)

本文先讲述python中的排序函数,然后说明如何获得排序的index。
- python排序函数
- 排序获得秩index


python排序函数

python常用的排序函数有sort和sorted函数。
1.sort函数
是列表list的内置函数,对列表进行排序。需要注意的是它会改变当前列表对象。
函数原型: sort(fun,key,reverse=False)
fun: 是排序函数,默认是归并排序,很少改变这个参数;
key: 是用来指定一个函数,在每次元素比较时被调用,此函数代表排序的规则,也就是你按照什么规则对你的序列进行排序;一般是与lambda函数结合;
reverse: 表明是否逆序,默认的False情况下是按照升序的规则进行排序的,当reverse=True时,便会按照降序进行排序。
2. sorted函数
不只针对列表,是比较通用的排序函数。它不会改变当前列表对象,返回的是一个当前对象排序的副本。
函数原型: sorted(iterable, cmp=None, key=None, reverse=False)

iterable:待排序的可迭代类型的容器;
cmp:用于比较的函数,比较什么由key决定,有默认值,迭代集合中的一项;
key:用列表元素的某个已命名的属性或函数(只有一个参数并且返回一个用于排序的值)作为关键字,有默认值,迭代集合中的一项;
reverse:同上

注意:sort函数会改变列表对象,sorted函数不会改变列表对象

python排序获得秩

方法一
用python的内置函数enumerate()
对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。
因此可以与列表生成式相结合,得到秩的列表。返回类型为list

l = [0.9,0.4,0.2,0.5,0.7]
rank = [index for index,value in sorted(list(enumerate(l)),key=lambda x:x[1])]

方法二
用numpy的函数argsort,可以直接获得排序秩。返回类型为numpy的narray

import numpy as np
rank1 = np.argsort(l)

python排序获得秩 (index)相关推荐

  1. python 排序 sorted 如果第一个条件 相同 则按第二个条件排序

    python 排序 sorted 如果第一个条件 相同 则按第二个条件排序 怎样遍历一个list  符合下列条件 1. 按照元组的第一个从小到大排序 2. 如果第一个相同  则按照元组第2个从大到小 ...

  2. 【Python排序搜索基本算法】之拓扑排序

    [Python排序搜索基本算法]之拓扑排序 版权声明:本文为博主原创文章,未经博主允许不得转载.

  3. Python排序函数用法

    Python排序函数完美体现了Python语言的简洁性,对于List对象,我们可以直接调用sort()函数(这里称为"方法"更合适)来进行排序,而对于其他可迭代对象(如set,di ...

  4. Python 排序 -- sort()、sorted()

    Python 排序 – sort().sorted() 1. 列表排序:sort() 函数原型: 直接对列表本身进行排序,不会返回新的列表 list.sort(cmp=None, key=None, ...

  5. python排序之sort和sorted

    python排序之sort和sorted 在使用python的时候很多时候需要用到排序操作,自己挨个去排太麻烦,而且效率也比较低下.因此学会使用Python自带的排序函数就显得尤为必要了. pytho ...

  6. Python排序算法总结

    Python排序算法总结 递归 在正式讲算法之前,先介绍一下递归.递归是一种解决问题的思路. 特点 调用自身 必须有一个明确的结束条件,比如if... 递归的两个阶段: 递推(压栈):到某个阶段,该阶 ...

  7. 带你掌握4种Python 排序算法

    摘要:在编程里,排序是一个重要算法,它可以帮助我们更快.更容易地定位数据.在这篇文章中,我们将使用排序算法分类器对我们的数组进行排序,了解它们是如何工作的. 本文分享自华为云社区<Python ...

  8. Python排序算法[二]:测试数据的迷雾散去

    算法试验中不仅仅要尝试使用不同的写法,更要注意测试所用数据的规律性,它们都会直接影响测试结果. 在上一篇文章<Python 排序算法[一]:令你茅塞顿开,却又匪夷所思>中我们学习了排序算法 ...

  9. [转载] python 列表List中index函数的坑

    参考链接: Python列表list sort() python 列表List中index函数的坑 例如 a = [1, 2, 1] 如果使用 a.index(1), 输出的只是列表中第一个出现的 1 ...

最新文章

  1. 从paxos到raft zab,为何raft能够“独领风骚”
  2. MySQL表碎片化(Table Fragmentation)以及处理
  3. PyTorch深度学习实践06
  4. FFMPEG中H.264的算法文档--整理自ffmpeg论坛等
  5. 二叉树祖先节点_二叉树的祖先
  6. api获取控件窗口的矩形大小_DevExpress 通用控件系列(4):SimpleButton
  7. 2. Zend_Controller 快速入门
  8. 绿城中国的数字化转型之大中台实践
  9. 电容触摸屏测试软件,大规模生产中如何测量触摸屏电容值
  10. PCB通孔类焊盘封装
  11. tplink错误代码51215_TPLINK路由器设置后访问受限
  12. 韩立春21日工作内容
  13. centos7安装boost记录
  14. c语言运行可以微信直接打开吗,如何用软件visual+c+++直接打开已将创建好的MFC工程文? 爱问知识人...
  15. vivo电池损耗指令代码_vivo手机电池换新活动开启,69起即可换新电池
  16. 【电脑使用】修改注册表——让有密码的电脑开机自动登录
  17. java 蓝牙打印_Android - 将收据打印到蓝牙打印机
  18. SpringSecurity+JWT+OAuth2
  19. linux操作系统上网本下载,Veket-上网本操作系统
  20. c语言之文件操作,C语言之——文件操作模式

热门文章

  1. java分布式实现图片上传到图片服务器
  2. 矩阵连乘问题(动态规划)
  3. 宽带猫各指示灯的含义
  4. Swagger-ui.html页面简单的修改
  5. fir多相滤波器实现
  6. Python通知Epic白嫖游戏信息
  7. 降水数据下载地址汇总
  8. maven错误Unknown lifecycle phase “build“. You must specify a valid lifecycle phase or a goal in the fo
  9. 视频回顾|Pulsar Summit Asia 2021,案例、运维、生态干货不断
  10. PTA 1100 校庆(Python3)