文档章节

python 中sorted 和sort

b
 bruc
发布于 2016/04/07 23:11
字数 355
阅读 135
收藏 0

码上生花,ECharts 作品展示赛正式启动!>>>

sorted 和sort是python内置的函数 但是sort是列表的函数,而sorted直接对容器进行操作,返回一个新的容器,容器可以是list,tuple,可迭代对象等。 a.sort()排序后会改变a。而sorted(a)会返回一个排序后的容器,a并不变化。

实际测试sorted比sort速度快。

返回下标index

numpy 中有个函数argsort()可以返回排序后的下标。对于列表s=[2, 3, 1, 4, 5],numpy.argsort(s)的返回值是array([2, 0, 1, 3, 4]),这个表示排序的列表[1, 2, 3, 4, 5]中元素对应于s中的下标为[2, 0, 1, 3, 4]。使用lettcode刷题时,不能导入包。所以只能用其他方式来实现这个功能。sorted就可以实现。sorted(range(len(s)), key=lambda k: s[k])的返回值就是[2, 0, 1, 3, 4]。

用help(sorted)查看帮助得到: sorted(iterable, key=None, reverse=False) --> new sorted list

第一个参数是可迭代对象,第二个参数是用来比较的关键字。sorted函数是返回iterable按照key参数制定的关键字排序后的新的列表。sorted(range(len(s)), key=lambda k: s[k])则是返回range(lens)按照关键字s[k]排序后的结果。(k是从第一个参数range(lens)中取元素)

© 著作权归作者所有

上一篇: 关于维生素B12
b
粉丝 0
博文 7
码字总数 2563
作品 0
兰州
私信 提问
加载中
请先登录后再评论。
python内置常用高阶函数(列出了5个常用的)

原文使用的是python2,现修改为python3,全部都实际输出过,可以运行。 引用自:http://www.cnblogs.com/duyaya/p/8562898.html https://blog.csdn.net/cv_you/article/details/70880405 pytho......

osc_u4dvv5qa
2019/04/12
5
0
python 两种排序方法 sort() sorted()

python中有两种排序方法,list内置sort()方法或者python内置的全局sorted()方法 区别为: sort()方法对list排序会修改list本身,不会返回新list。sort()只能对list进行排序。 sorted()方法会返...

osc_4nr2ziai
2019/12/12
4
0
Python高阶函数及函数柯里化

1 Python高阶函数   接收函数为参数,或者把函数作为结果返回的函数为高阶函数。 1.1 自定义sort函数   要求:仿照内建函数sorted,自行实现一个sort函数。内建函数sorted函数是返回一个...

osc_jx98daik
04/16
4
0
Python列表排序方法reverse、sort、sorted详解

python语言中的列表排序方法有三个:reverse反转/倒序排序、sort正序排序、sorted可以获取排序后的列表。在更高级列表排序中,后两中方法还可以加入条件参数进行排序。 reverse()方法 将列表...

osc_nhwfplmt
2019/10/11
3
0
python序列(列表,元组,字典)的常用排序

列表 正向排序 sort() >>> list=[1,6,3,4,5,2]>>> list.sort()>>> list[1, 2, 3, 4, 5, 6]    sorted() >>> sorted([1,6,3,4,5,2])[1, 2, 3, 4, 5, 6]    sort与sorted区别 sort是永久的......

osc_rkq70frl
2018/07/01
2
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周六乱弹 —— 打死这个下蛋的鸡算了

首页乱弹入口,感谢巴蜀。 【正文】 @莫默磨墨先生 :千万不要想着摆地摊,老老实实写代码去! 别问为什么, 问就是你不合适! 干脆直接卖烤串得了…… 所以现在喊着你摆地摊的, 一定是隔壁...

小小编辑
今天
29
1
Synchronized底层实现

https://blog.csdn.net/qq_35190492/article/details/106180781

JaneRoad
今天
18
0
解决okhttp无法重用连接的问题

解决okhttp无法重用连接的问题 最近在一个程序中使用okhttp调用http接口。开始时一切正常,但是测试运行一段时间后,okhttp就会报告recv失败。同时在调用端机器上,netstat显示很多套接字是T...

tommwq
今天
17
0
入坑Linux-day15(使用DHCP动态管理主机地址)

一、动态主机配置协议(DHCP) #DHCP是一种基于UDP协议且仅限于在局域网内部使用的网路协议,主要用于大型的局域网环境或者存在较多移动办公设备的局域网环境中,其主要用途是为局域网内部的...

宁生写你
今天
8
0
js canvas 旋转90度的整数倍

为了避免出现黑框 效果如下 根据不同的方向,设置宽高和画笔位置等 <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"/> <title>Title</title> <style> .img ......

阿豪boy
今天
22
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部