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查看多台服务器进程的脚本分享
Jun 11 Python
详解Python网络爬虫功能的基本写法
Jan 28 Python
Python字符串拼接、截取及替换方法总结分析
Apr 13 Python
import的本质解析
Oct 30 Python
基于Python实现的ID3决策树功能示例
Jan 02 Python
不到40行代码用Python实现一个简单的推荐系统
May 10 Python
Python argparse模块应用实例解析
Nov 15 Python
python3实现elasticsearch批量更新数据
Dec 03 Python
python读写文件write和flush的实现方式
Feb 21 Python
python中pivot()函数基础知识点
Jan 03 Python
Python帮你解决手机qq微信内存占用太多问题
Feb 15 Python
Python sklearn分类决策树方法详解
Sep 23 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
SSI指令
2006/11/25 PHP
深入理解PHP内核(二)之SAPI探究
2015/11/10 PHP
[原创]PHP字符串中插入子字符串方法总结
2016/05/06 PHP
PHP SFTP实现上传下载功能
2017/07/26 PHP
JS获取地址栏参数的小例子
2013/08/23 Javascript
addEventListener 的用法示例介绍
2014/05/07 Javascript
JavaScript中获取鼠标位置相关属性总结
2014/10/11 Javascript
jQuery on()方法绑定动态元素的点击事件无响应的解决办法
2016/07/07 Javascript
JS导出PDF插件的方法(支持中文、图片使用路径)
2016/07/12 Javascript
JavaScript动态添加事件之事件委托
2016/07/12 Javascript
jQuery子元素过滤选择器用法示例
2016/09/09 Javascript
轻松实现js弹框显示选项
2016/09/13 Javascript
TypeScript入门-接口
2017/03/30 Javascript
基于jQuery实现的Ajax 验证用户名唯一性实例代码
2017/06/28 jQuery
seajs实现强制刷新本地缓存的方法分析
2017/10/16 Javascript
Vue实现美团app的影院推荐选座功能【推荐】
2018/08/29 Javascript
vue-cli 引入jQuery,Bootstrap,popper的方法
2018/09/03 jQuery
vue实现页面内容禁止选中功能,仅输入框和文本域可选
2019/11/09 Javascript
MySQL最常见的操作语句小结
2015/05/07 Python
使用url_helper简化Python中Django框架的url配置教程
2015/05/30 Python
python实现对服务器脚本敏感信息的加密解密功能
2019/08/13 Python
基于Python实现签到脚本过程解析
2019/10/25 Python
Python字典生成式、集合生成式、生成器用法实例分析
2020/01/07 Python
使用 pytorch 创建神经网络拟合sin函数的实现
2020/02/24 Python
Python实现捕获异常发生的文件和具体行数
2020/04/25 Python
举例详解CSS3中的Transition
2015/07/15 HTML / CSS
美国领先的在线邮轮旅游公司:CruiseDirect
2018/06/07 全球购物
关于Java String的一道面试题
2013/09/29 面试题
自荐信的两点禁忌
2013/10/30 职场文书
人事主管岗位职责
2014/01/30 职场文书
2015试用期转正工作总结
2014/12/12 职场文书
文明倡议书
2015/01/19 职场文书
投资意向协议书
2015/01/29 职场文书
2015年世界无烟日活动总结
2015/02/10 职场文书
在校学生证明格式
2015/06/24 职场文书
Go语言操作数据库及其常规操作的示例代码
2021/04/21 Golang