python中sort和sorted函数小结
来源:互联网 发布:php echo 编辑:程序博客网 时间:2024/05/23 16:37
因为作者本人也是刚学python不久,在看python官方文档的时候看到了 Lambda 函数,其中使用sort函数的地方看的有些迷惑,所以就查找了一些关于sort和sorted函数的资料,在此整理到博客
L.sort(cmp=None, key=None, reverse=False)
sorted(iterable, cmp=None, key=None, reverse=False)
这样看,sorted函数只比sort函数多一个iterable参数,其余没什么不同,iterable是一个迭代器参数。
一、
sorted是一个内建函数,sort是列表的一个内部函数,所以调用方式不一样,并且sorted函数不改变其迭代器参数,返回一个排序好的序列副本,但是sort作为列表的内部函数,在调用完之后,列表自身内部已经是排序好的顺序
L1 = [3,2,5,1,4]L2 = [3,2,5,1,4]L1.sort()print('L1:',L1)print('sorted:',sorted(L2))print('L2:',L2)
这段代码运行结果为
L1: [1, 2, 3, 4, 5]
sorted: [1, 2, 3, 4, 5]
L2: [3, 2, 5, 1, 4]
二、key参数
key 是带一个参数的函数, 用来为每个元素提取比较值
1.假如我们不使用key参数,key默认是None
L = [(1,'S'),(3,'E'),(2,'A')]L.sort()print('sort:',L)L = [(1,'S'),(3,'E'),(2,'A')]print('sorted:',sorted(L))
以上代码运行的结果为:
sort: [(1, ‘S’), (2, ‘A’), (3, ‘E’)]
sorted: [(1, ‘S’), (2, ‘A’), (3, ‘E’)]
2.现在我们使用key参数,提取最后一个元素作为比较值
def last(L): return L[-1]L = [(1,'S'),(3,'E'),(2,'A')]L.sort(key = last)print('sort:',L)L = [(1,'S'),(3,'E'),(2,'A')]print('sorted:',sorted(L,key = last))
上面代码运行结果为:
sort: [(2, ‘A’), (3, ‘E’), (1, ‘S’)]
sorted: [(2, ‘A’), (3, ‘E’), (1, ‘S’)]
3.使用lambda匿名函数作为key参数
通过 lambda 关键字,可以创建短小的匿名函数。
L = [(1,'S'),(3,'E'),(2,'A')]L.sort(key = lambda L : L[-1])print('sort:',L)L = [(1,'S'),(3,'E'),(2,'A')]print('sorted:',sorted(L,key = lambda L : L[-1]))
运行结果为;
sort: [(2, ‘A’), (3, ‘E’), (1, ‘S’)]
sorted: [(2, ‘A’), (3, ‘E’), (1, ‘S’)]
三、reverse参数
reverse参数是默认值false的时候是正序排,当reverse = True的时候是倒序排列
L = [1,3,2]L.sort()print(L)L.sort(reverse = True)print(L)
运行结果为:
[1, 2, 3]
[3, 2, 1]
关于cmp函数,因为在Python3.x中已经取消了这个参数。。在此就不多说了
- python中sort和sorted函数小结
- Python中sort 和 sorted函数
- python中sort和sorted函数
- Python中sort函数、sorted函数和argsort函数
- python中sort()函数和sorted()函数的区别
- Python中排序sort 、sorted和argsort函数
- python中argsort,sort 和 sorted,operator.itemgetter函数
- Python中sort以及sorted函数初探
- python中sort()、sorted()函数比较
- Python排序函数sort()和sorted()详解
- Python中sort和sorted快排
- python中sort和sorted总结
- python sorted和sort
- python中sort函数、sorted函数、argsort函数
- Python基础 7 ---- Python内置sort和sorted函数
- Python函数式编程——sorted和sort函数
- Python的排序方法:list.sort函数和sorted函数
- Python中排序常用到的sort 、sorted和argsort函数
- java读取某个目录下所有文件并通过el表达式将相关文件信息展示出来,js提供页面搜索及查看下载功能
- nyoj 456 邮票分你一半(背包问题)
- C#中String和string的区别
- 安卓面试题
- Hibernate
- python中sort和sorted函数小结
- 感悟
- 从源码角度看一个apk的启动过程和一个activity的启动过程
- 使用TraceView观察Windows PCIE驱动设备加载和卸载过程
- 浅谈四轴飞行器的力原理
- 用户体验的分类----产品经理深入浅出课程
- 用CSDN Markdown在线编辑器写博客
- MFC为控件添加消息响应函数(事件)
- 从网络获取数据(1)从newThread到AsyncTask在到IntentService