Python对列表排序的方法实例分析


Posted in Python onMay 16, 2015

本文实例讲述了Python对列表排序的方法。分享给大家供大家参考。具体分析如下:

1、sort()函数

sort()函数使用固定的排序算法对列表排序。sort()函数对列表排序时改变了原来的列表,从而让其中的元素能按一定的顺序排列,而不是简单的返回一个已排序的列表副本。

注意sort()函数改变原来的列表,函数返回值是空值即None。因此,如果需要一个已排好序的列表副本,同时又要保留原有列表不变的时候,就不能直接简单的使用sort()函数。为了实现上述功能使用sort()的方法是:先获取列表X的副本Y,然后再对Y进行排序。代码如下:

x=[4,6,2,1,7,9,4]
y=x[:]
y.sort()
print x
print y

结果如下:

[4, 6, 2, 1, 7, 9, 4]
[1, 2, 4, 4, 6, 7, 9]

说明:调用x[:]得到的是包含了x所有元素的分片,这是一种很有效率的复制整个列表的方法。通过y=x简单的将x复制给y是没有用的,因为这样做就让x和y都指向了同一个列表了。

2、sorted()函数

另外一种获取已排序的列表副本的方法是使用sorted()函数。注意,sorted()函数可以用于任何可迭代的对象。

x=[4,6,2,1,7,9,4]
y=sorted(x)
print x
print y

结果:

[4, 6, 2, 1, 7, 9, 4]
[1, 2, 4, 4, 6, 7, 9]

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python+mysql实现简单的web程序
Sep 11 Python
Python实现的基数排序算法原理与用法实例分析
Nov 23 Python
Python向MySQL批量插数据的实例讲解
Mar 31 Python
python实现人人自动回复、抢沙发功能
Jun 08 Python
纯用NumPy实现神经网络的示例代码
Oct 24 Python
pyspark操作MongoDB的方法步骤
Jan 04 Python
Python中内建模块collections如何使用
May 27 Python
python定义类的简单用法
Jul 24 Python
Python实现手势识别
Oct 21 Python
python中添加模块导入路径的方法
Feb 03 Python
学会Python数据可视化必须尝试这7个库
Jun 16 Python
Python答题卡识别并给出分数的实现代码
Jun 22 Python
python中base64加密解密方法实例分析
May 16 #Python
python中threading超线程用法实例分析
May 16 #Python
python实现合并两个数组的方法
May 16 #Python
python简单实现基数排序算法
May 16 #Python
Python使用cx_Oracle模块将oracle中数据导出到csv文件的方法
May 16 #Python
python中循环语句while用法实例
May 16 #Python
pymongo实现多结果进行多列排序的方法
May 16 #Python
You might like
php实现文件下载功能的几个代码分享
2014/05/10 PHP
PHP多文件上传类实例
2015/03/07 PHP
PHP+redis实现的悲观锁机制示例
2018/06/12 PHP
PHP中抽象类,接口功能、定义方法示例
2019/02/26 PHP
PhpStorm的使用教程(本地运行PHP+远程开发+快捷键)
2020/03/26 PHP
js+xml生成级联下拉框代码
2012/07/24 Javascript
jquery实现多级下拉菜单的实例代码
2013/10/02 Javascript
jquery中EasyUI实现异步树
2015/03/01 Javascript
Javascript 字符串模板的简单实现
2016/02/13 Javascript
JS onkeypress兼容性写法详解
2016/04/27 Javascript
JavaScript中自带的 reduce()方法使用示例详解
2016/08/10 Javascript
AngularJS 单元测试(二)详解
2016/09/21 Javascript
纯js实现页面返回顶部的动画(超简单)
2017/08/10 Javascript
使用jquery+iframe做一个ajax上传效果(实例)
2017/08/24 jQuery
vue配置请求本地json数据的方法
2018/04/11 Javascript
微信小程序tabbar底部导航
2018/11/05 Javascript
利用d3.js力导布局绘制资源拓扑图实例教程
2019/01/08 Javascript
vue里的data要用return返回的原因浅析
2019/05/28 Javascript
微信小程序3D轮播实现代码
2019/09/19 Javascript
在vue中配置不同的代理同时访问不同的后台操作
2020/09/11 Javascript
[04:05]TI9战队采访 - Natus Vincere
2019/08/22 DOTA
Python中字符串的处理技巧分享
2016/09/17 Python
浅谈Python里面小数点精度的控制
2018/07/16 Python
python操作excel的方法
2018/08/16 Python
对python文件读写的缓冲行为详解
2019/02/13 Python
python BlockingScheduler定时任务及其他方式的实现
2019/09/19 Python
Python3加密解密库Crypto的RSA加解密和签名/验签实现方法实例
2020/02/11 Python
纯CSS3制作的鼠标悬停时边框旋转
2017/01/03 HTML / CSS
Sperry官网:帆船鞋创始品牌
2016/09/07 全球购物
幼儿教师个人求职信范文
2013/09/21 职场文书
怎样写演讲稿
2014/01/04 职场文书
房地产还款计划书
2014/01/10 职场文书
离婚协议书怎么写(范本参考)
2014/09/30 职场文书
golang slice元素去重操作
2021/04/30 Golang
mysql 数据插入优化方法之concurrent_insert
2021/07/01 MySQL
Python使用mitmproxy工具监控手机 下载手机小视频
2022/04/18 Python