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实现数通设备端口监控示例
Apr 02 Python
在Python中关于中文编码问题的处理建议
Apr 08 Python
Python xlrd读取excel日期类型的2种方法
Apr 28 Python
Python简单实现enum功能的方法
Apr 25 Python
python开发利器之ulipad的使用实践
Mar 16 Python
python构建深度神经网络(DNN)
Mar 10 Python
基于Python List的赋值方法
Jun 23 Python
机器学习实战之knn算法pandas
Jun 22 Python
在Python中表示一个对象的方法
Jun 25 Python
Python反爬虫伪装浏览器进行爬虫
Feb 28 Python
用opencv给图片换背景色的示例代码
Jul 08 Python
python绘制雷达图实例讲解
Jan 03 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 中执行系统外部命令
2006/10/09 PHP
在JavaScript中调用php程序
2009/03/09 PHP
php imagecreatetruecolor 创建高清和透明图片代码小结
2010/05/15 PHP
PHP使用MPDF类生成PDF的方法
2015/12/08 PHP
php利用fsockopen GET/POST提交表单及上传文件
2017/05/22 PHP
Three.js源码阅读笔记(Object3D类)
2012/12/27 Javascript
jQuery中first()方法用法实例
2015/01/06 Javascript
7个让JavaScript变得更好的注意事项
2015/01/28 Javascript
javascript中Math.random()使用详解
2015/04/15 Javascript
js实现仿MSN带关闭功能的右下角弹窗代码
2015/09/04 Javascript
jQuery插件FusionCharts绘制2D柱状图和折线图的组合图效果示例【附demo源码】
2017/04/10 jQuery
详解windows下vue-cli及webpack 构建网站(二)导入bootstrap样式
2017/06/17 Javascript
layer.confirm()右边按钮实现href的例子
2019/09/27 Javascript
在Layui中操作数据表格,给指定单元格添加事件示例
2019/10/26 Javascript
vue获取data数据改变前后的值方法
2019/11/07 Javascript
[55:32]2018DOTA2亚洲邀请赛 4.4 淘汰赛 EG vs LGD 第二场
2018/04/05 DOTA
python实现在pickling的时候压缩的方法
2014/09/25 Python
Python入门_浅谈逻辑判断与运算符
2017/05/16 Python
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
2018/06/22 Python
详解Anconda环境下载python包的教程(图形界面+命令行+pycharm安装)
2019/11/11 Python
利用pytorch实现对CIFAR-10数据集的分类
2020/01/14 Python
Python控制台输出时刷新当前行内容而不是输出新行的实现
2020/02/21 Python
2020新版本pycharm+anaconda+opencv+pyqt环境配置学习笔记,亲测可用
2020/03/24 Python
分享一个python的aes加密代码
2020/12/22 Python
python 如何用urllib与服务端交互(发送和接收数据)
2021/03/04 Python
CSS3等相关属性制作分页导航实现代码
2012/12/24 HTML / CSS
法国珠宝店:CLEOR
2017/01/29 全球购物
天巡全球:Skyscanner Global
2017/06/20 全球购物
Rentalcars.com中国:世界上最大的在线汽车租赁服务
2019/08/22 全球购物
TCP/IP的分层模型
2013/10/27 面试题
Linux的主要特性
2016/09/03 面试题
计算机软件个人的自荐信范文
2013/12/01 职场文书
安全生产宣传标语
2014/06/06 职场文书
离婚协议书范本(2014版)
2014/09/28 职场文书
2015年办公室工作总结范文
2015/03/31 职场文书
oracle设置密码复杂度及设置超时退出的功能
2022/06/28 Oracle