Python列表排序函数
来源:互联网 发布:淘宝怎么发布买家秀 编辑:程序博客网 时间:2024/06/05 02:26
sort函数
原地排序,直接改变输入的列表,而无返回值。
x = [2, 1, 3]x.sort()print x# output: [1, 2, 3]print x.sort()# output: None
若要实现赋值,则先把x的副本(一个新对象)赋值给一个变量,再排序,这样可以保证不改变x。
x = [2, 1, 3]y = x[:] # 或 y = list(x)y.sort()print x# output: [2, 1, 3]print y# output: [1, 2, 3]
若直接赋值,不新建对象,实际上传递的是x的地址,x和y最后会指向同一对象,导致x和y都改变。
x = [2, 1, 3]y = xy.sort()print x# output: [1, 2, 3]print y# output: [1, 2, 3]
sort函数的关键字参数
- cmp: 可以自定义比较参数。cmp(x,y)在x小于y时返回负数,在x大于y时返回正数,在x等于y时返回0。
print cmp(1, 2)# output: -1print cmp(1, 1)# output: 0print cmp(2, 1)# output: 1x = [2, 1, 3]x.sort(cmp)print x# output: [1, 2, 3]
- key: 根据键值排序。
x = ['aaa', 'a', 'aa']x.sort(key=len)print x# output: ['a', 'aa', 'aaa']
- reverse: 表明列表是否要进行反向排序。
x = [2, 1, 3]x.sort(reverse=True)print x# output: [3, 2, 1]
sorted函数
sorted函数能实现上述不改变待排列表,并返回排序副本的需求。
x = [2, 1, 3]y = sorted(x)print x# output: [2, 1, 3]print y# output: [1, 2, 3]
阅读全文
1 0
- Python列表排序函数
- Python 中的列表排序函数
- python的sorted 函数、python列表排序
- python根据函数进行列表排序
- Python 的列表排序(用 operator 函数进行多级排序)
- Python 嵌套列表的排序(匿名函数lambda)
- Python 的列表排序
- python列表排序
- python列表排序
- Python字典、列表排序
- python 列表排序
- Python 的列表排序
- python列表排序
- Python大法列表排序
- Python 的列表排序
- python列表排序
- Python 的列表排序
- Python列表拷贝,排序
- C++ 归并排序的实现实例代码
- 区块链学习
- Java多线程系列(二)-----实现方式
- 文章标题
- nyoj 27 水池数目
- Python列表排序函数
- python27+Sqlmap安装详解
- 牛客网《剑指Offer》 链表中倒数第k个结点
- 百度云网盘速度慢,需要破解版吗?直接获取下载地址
- Codeforces 839E Mother of Dragons(最大团)
- Java 线程池ThreadPoolExecutor(基于jdk1.8)(一)
- web开发中如何对json对象的某一属性对其进行排序
- Opencv之图像浮雕
- immutable日常操作之深入API