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使用Django实现博客系统完整版
Sep 29 Python
Python基础教程之内置函数locals()和globals()用法分析
Mar 16 Python
python merge、concat合并数据集的实例讲解
Apr 12 Python
彻彻底底地理解Python中的编码问题
Oct 15 Python
在python中利用opencv简单做图片比对的方法
Jan 24 Python
Python发展简史 Python来历
May 14 Python
详解PANDAS 数据合并与重塑(join/merge篇)
Jul 09 Python
快速解决vue.js 模板和jinja 模板冲突的问题
Jul 26 Python
基于pycharm 项目和项目文件命名规则的介绍
Jan 15 Python
python des,aes,rsa加解密的实现
Jan 16 Python
Python基础之数据类型知识汇总
May 18 Python
OpenCV 图像梯度的实现方法
Jul 25 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 中文和编码判断代码
2010/05/16 PHP
PHP无限分类(树形类)的深入分析
2013/06/02 PHP
解析php函数method_exists()与is_callable()的区别
2013/06/21 PHP
php修改NetBeans默认字体的大小
2013/07/02 PHP
ThinkPHP3.1新特性之Action参数绑定
2014/06/19 PHP
浅谈PHP中pack、unpack的详细用法
2018/03/12 PHP
PDO::quote讲解
2019/01/29 PHP
PHP通过调用新浪API生成t.cn格式短网址链接的方法详解
2019/02/20 PHP
浅谈laravel orm 中的一对多关系 hasMany
2019/10/21 PHP
js实现的切换面板实例代码
2013/06/17 Javascript
在NodeJS中启用ECMAScript 6小结(windos以及Linux)
2014/07/15 NodeJs
jQuery控制TR显示隐藏的三种常用方法
2014/08/21 Javascript
基于jQuery实现仿51job城市选择功能实例代码
2016/03/02 Javascript
JavaScript学习笔记整理_关于表达式和语句
2016/09/19 Javascript
用js实现简单算法的实例代码
2016/09/24 Javascript
详解Puppeteer 入门教程
2018/05/09 Javascript
npm 下载指定版本的组件方法
2018/05/17 Javascript
vue 开发之路由配置方法详解
2019/12/02 Javascript
如何在vue中使用jointjs过程解析
2020/05/29 Javascript
原生js实现放大镜组件
2021/01/22 Javascript
[00:09]DOTA2全国高校联赛 精彩活动引爆全场
2018/05/30 DOTA
Python读csv文件去掉一列后再写入新的文件实例
2017/12/28 Python
python实现一个点绕另一个点旋转后的坐标
2019/12/04 Python
python图片指定区域替换img.paste函数的使用
2020/04/09 Python
Python钉钉报警及Zabbix集成钉钉报警的示例代码
2020/08/17 Python
举例讲解Python装饰器
2020/12/24 Python
python中uuid模块实例浅析
2020/12/29 Python
CSS3新属性transition-property transform box-shadow实例学习
2013/06/06 HTML / CSS
CSS3实现圆角、阴影、透明效果并兼容各大浏览器
2014/08/08 HTML / CSS
意大利体育用品网上商城:Nencini Sport
2016/08/18 全球购物
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
2016/01/06 面试题
电力公司个人求职信范文
2014/02/04 职场文书
男性健康日的活动方案
2014/08/18 职场文书
自主招生推荐信格式模板
2015/03/24 职场文书
Python机器学习实战之k-近邻算法的实现
2021/11/27 Python
Mybatis是这样防止sql注入的
2021/12/06 Java/Android