python中sort sorted reverse reversed函数的区别说明


Posted in Python onMay 11, 2020

sort()是可变对象(字典、列表)的方法,无参数,无返回值,sort()会改变可变对象,因此无需返回值。

sort()方法是可变对象独有的方法或者属性,而作为不可变对象如元组、字符串是不具有这些方法的,如果调用将会返回一个异常。

代码如下:

>>> a=[5,4,3,2,1]
>>> a.sort()
>>> [1, 2, 3, 4, 5]
>>> a
>>> [1, 2, 3, 4, 5]

sorted()是python的内置函数,并不是可变对象(列表、字典)的特有方法,sorted()函数需要一个参数(参数可以是列表、字典、元组、字符串),无论传递什么参数,都将返回一个以列表为容器的返回值,如果是字典将返回键的列表。

代码如下:

>>> mystring="54321"
>>> mytuple=(5,4,3,2,1)
>>> mylist=[5,4,3,2,1]

>>> sorted(mystring)
>>>[1, 2, 3, 4, 5]

>>>mystring
>>>"54321"

>>> sorted(mytuple)
>>>[1, 2, 3, 4, 5]

>>> sorted(mylist)
>>>[1, 2, 3, 4, 5]

reverse()与sort的使用方式一样,而reversed()与sorted()的使用方式相同。

代码如下:

>>> mylist=[5,4,3,2,1]
>>> mylist.reverse()
>>> mylist
>>>[1, 2, 3, 4, 5]

>>> for i in reversed(mylist):
>>>print i,
>>>1 2 3 4 5

通过序列的切片也可以达到“逆转”的效果

代码如下:

>>> mystring="54321"
>>> mytuple=(5,4,3,2,1)
>>> mylist=[5,4,3,2,1]

>>> mystring[::-1]

>>>'12345'
>>> mytuple[::-1]
>>>(1, 2, 3, 4, 5)
>>> mylist[::-1]

>>>[1, 2, 3, 4, 5]

补充知识:python sorted()函数cmp,key,reverse参数详解

Python帮助文档中对sorted方法的讲解:

sorted(iterable[,cmp,[,key[,reverse=True]]])

作用:返回一个经过排序的列表。

第一个参数是一个iterable,返回值是一个对iterable中元素进行排序后的列表(list)。

可选的参数有三个,cmp、key和reverse。

1)cmp指定一个定制的比较函数,这个函数接收两个参数(iterable的元素),如果第一个参数小于第二个参数,返回一个负数;如果第一个参数等于第二个参数,返回零;如果第一个参数大于第二个参数,返回一个正数。默认值为None。

2)key指定一个接收一个参数的函数,这个函数用于从每个元素中提取一个用于比较的关键字。默认值为None。

3)reverse是一个布尔值。如果设置为True,列表元素将被倒序排列。

key参数的值应该是一个函数,这个函数接收一个参数并且返回一个用于比较的关键字。对复杂对象的比较通常是使用对象的切片作为关键字。

例如:

students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]
sorted(students, key=lambda s: s[2]) #按年龄排序
# [('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]

以上这篇python中sort sorted reverse reversed函数的区别说明就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python对象体系深入分析
Oct 28 Python
在Windows服务器下用Apache和mod_wsgi配置Python应用的教程
May 06 Python
你应该知道的python列表去重方法
Jan 17 Python
python模块之time模块(实例讲解)
Sep 13 Python
详解如何利用Cython为Python代码加速
Jan 27 Python
Python图像处理实现两幅图像合成一幅图像的方法【测试可用】
Jan 04 Python
Python eval的常见错误封装及利用原理详解
Mar 26 Python
浅析Windows 嵌入python解释器的过程
Jul 26 Python
解决Pytorch半精度浮点型网络训练的问题
May 24 Python
Python中OpenCV实现查找轮廓的实例
Jun 08 Python
JAVA SpringMVC实现自定义拦截器
Mar 16 Python
Python实现双向链表基本操作
May 25 Python
python的reverse函数翻转结果为None的问题
May 11 #Python
Pyecharts地图显示不完成问题解决方案
May 11 #Python
将python字符串转化成长表达式的函数eval实例
May 11 #Python
python函数中将变量名转换成字符串实例
May 11 #Python
Python 字节流,字符串,十六进制相互转换实例(binascii,bytes)
May 11 #Python
基于python实现获取网页图片过程解析
May 11 #Python
python将unicode和str互相转化的实现
May 11 #Python
You might like
杏林同学录(一)
2006/10/09 PHP
destoon安全设置中需要设置可写权限的目录及文件
2014/06/21 PHP
使用PHP similar text计算两个字符串相似度
2015/11/06 PHP
js获取TreeView控件选中节点的Text和Value值的方法
2012/11/24 Javascript
简单的Jquery全选功能
2013/11/07 Javascript
一个jquery实现的不错的多行文字图片滚动效果
2014/09/28 Javascript
原生js和jQuery随意改变div属性style的名称和值
2014/10/22 Javascript
每天一篇javascript学习小结(Boolean对象)
2015/11/12 Javascript
jquery拖拽排序简单实现方法(效果增强版)
2016/02/16 Javascript
js改变style样式和css样式的简单实例
2016/06/28 Javascript
js转html实体的方法
2016/09/27 Javascript
vue父组件中获取子组件中的数据(实例讲解)
2017/09/27 Javascript
vue2.0 使用element-ui里的upload组件实现图片预览效果方法
2018/09/04 Javascript
vue中格式化时间过滤器代码实例
2019/04/17 Javascript
Vue Router中应用中间件的方法
2020/08/06 Javascript
[01:51]2014DOTA2西雅图邀请赛 MVP 外卡赛black场间采访
2014/07/09 DOTA
[50:05]VGJ.S vs OG 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
[08:08]DOTA2-DPC中国联赛2月28日Recap集锦
2021/03/11 DOTA
python使用range函数计算一组数和的方法
2015/05/07 Python
Python正则表达式实现截取成对括号的方法
2017/01/06 Python
Python插件virtualenv搭建虚拟环境
2017/11/20 Python
python检测服务器端口代码实例
2019/08/31 Python
修改Pandas的行或列的名字(重命名)
2019/12/18 Python
使用Keras 实现查看model weights .h5 文件的内容
2020/06/09 Python
Keras框架中的epoch、bacth、batch size、iteration使用介绍
2020/06/10 Python
HTML5新增的8类INPUT输入类型介绍
2015/07/06 HTML / CSS
施华洛世奇美国官网:SWAROVSKI美国
2018/02/08 全球购物
全球最大的在线橄榄球商店:Lovell Rugby
2018/05/20 全球购物
法国二手手袋、手表和奢侈珠宝购物网站:Collector Square
2018/07/05 全球购物
车间机修工岗位职责
2014/02/28 职场文书
新年抽奖获奖感言
2014/03/02 职场文书
银行内勤岗位职责
2014/04/09 职场文书
联片教研活动总结
2014/07/01 职场文书
酒店爱岗敬业演讲稿
2014/09/02 职场文书
公路施工安全责任书
2015/05/08 职场文书
2019优秀干部竞聘演讲稿范文!
2019/07/02 职场文书