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实现的字典值比较功能示例
Jan 08 Python
python 中的list和array的不同之处及转换问题
Mar 13 Python
详解Django rest_framework实现RESTful API
May 24 Python
Python集中化管理平台Ansible介绍与YAML简介
Jun 12 Python
利用python计算时间差(返回天数)
Sep 07 Python
Python scrapy增量爬取实例及实现过程解析
Dec 24 Python
Python遍历字典方式就实例详解
Dec 28 Python
利用python实现逐步回归
Feb 24 Python
基于jupyter代码无法在pycharm中运行的解决方法
Apr 21 Python
Python实现列表中非负数保留,负数转化为指定的数值方式
Jun 04 Python
python thrift 实现 单端口多服务的过程
Jun 08 Python
Python中for后接else的语法使用
May 18 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
也谈php网站在线人数统计
2008/04/09 PHP
php防止sql注入示例分析和几种常见攻击正则表达式
2014/01/12 PHP
30分钟就入门的正则表达式基础教程
2013/02/25 Javascript
document.documentElement的一些使用技巧
2013/04/18 Javascript
jQuery prev ~ siblings选择器使用介绍
2013/08/09 Javascript
jQuery实现加入购物车飞入动画效果
2015/03/14 Javascript
jquery div模态窗口的简单实例
2016/05/28 Javascript
react-router4 配合webpack require.ensure 实现异步加载的示例
2018/01/18 Javascript
JS动画定时器知识总结
2018/03/23 Javascript
vue 设置proxyTable参数进行代理跨域
2018/04/09 Javascript
Vue 框架之动态绑定 css 样式实例分析
2018/11/14 Javascript
vue实现父子组件之间的通信以及兄弟组件的通信功能示例
2019/01/29 Javascript
微信公众号生成新浪短网址的实现(快速生成)
2019/08/18 Javascript
解决vue使用vant下拉框van-dropdown-item 绑定title值不变问题
2020/08/05 Javascript
[02:51]DOTA2战队出征照拍摄花絮 TI3明星化身时尚男模
2013/07/22 DOTA
[01:23]2014DOTA2国际邀请赛 球迷无处不在Ti现场世界杯受关注
2014/07/10 DOTA
使用PYTHON接收多播数据的代码
2012/03/01 Python
Python使用CMD模块更优雅的运行脚本
2015/05/11 Python
python实现带声音的摩斯码翻译实现方法
2015/05/20 Python
Django imgareaselect手动剪切头像实现方法
2015/05/26 Python
python使用os.listdir和os.walk获得文件的路径的方法
2017/12/16 Python
Django Admin实现三级联动的示例代码(省市区)
2018/06/22 Python
pandas读取csv文件,分隔符参数sep的实例
2018/12/12 Python
python3 pillow模块实现简单验证码
2019/10/31 Python
python:动态路由的Flask程序代码
2019/11/22 Python
详解pycharm连接远程linux服务器的虚拟环境的方法
2020/11/13 Python
流行文化收藏品:Sideshow(DC漫画,星球大战,漫威)
2019/03/17 全球购物
电子商务专业个人的自我评价
2013/12/19 职场文书
运动会开幕式邀请函
2014/02/03 职场文书
小学趣味运动会加油稿
2014/09/25 职场文书
办公室主任四风问题对照检查材料思想汇报
2014/09/28 职场文书
北京爱情故事观后感
2015/06/12 职场文书
七一表彰大会简报
2015/07/20 职场文书
严以律己学习心得体会
2016/01/13 职场文书
Python WSGI 规范简介
2021/04/11 Python
Nginx HTTP跳转至HTTPS
2022/05/15 Servers