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 ip正则式
May 07 Python
python sort、sorted高级排序技巧
Nov 21 Python
浅谈Python实现Apriori算法介绍
Dec 20 Python
python监控键盘输入实例代码
Feb 09 Python
python实现K近邻回归,采用等权重和不等权重的方法
Jan 23 Python
Python openpyxl读取单元格字体颜色过程解析
Sep 03 Python
Win10下python 2.7与python 3.7双环境安装教程图解
Oct 12 Python
Python urlopen()和urlretrieve()用法解析
Jan 07 Python
解决Tensorboard可视化错误:不显示数据 No scalar data was found
Feb 15 Python
python通过文本在一个图中画多条线的实例
Feb 21 Python
浅谈Tensorflow加载Vgg预训练模型的几个注意事项
May 26 Python
python爬虫之selenium库的安装及使用教程
May 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
phpcms手机内容页面添加上一篇和下一篇
2015/06/05 PHP
浅谈php中的循环while、do...while、for、foreach四种循环
2016/11/05 PHP
php静态成员方法和静态的成员属性的使用方法
2017/10/26 PHP
PHP dirname(__FILE__)原理及用法解析
2020/10/28 PHP
浅谈Javascript嵌套函数及闭包
2010/11/09 Javascript
input按钮的事件处理大全
2010/12/10 Javascript
js动态为代码着色显示行号
2013/05/29 Javascript
js单独获取一个checkbox看其是否被选中
2014/09/22 Javascript
用JavaScript实现页面重定向功能的教程
2015/06/04 Javascript
jQuery网页选项卡插件rTabs用法实例分析
2015/08/26 Javascript
深入学习JavaScript对象
2015/10/13 Javascript
JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)
2016/06/24 Javascript
学习vue.js计算属性
2016/12/03 Javascript
jQuery实现验证码功能
2017/03/17 Javascript
vue2.0实现倒计时的插件(时间戳 刷新 跳转 都不影响)
2017/03/30 Javascript
angularjs中使用ng-bind-html和ng-include的实例
2017/04/28 Javascript
vue的基本用法与常见指令
2017/08/15 Javascript
jquery一键控制checkbox全选、反选或全不选
2017/10/16 jQuery
Bootstrap3.3.7导航栏下拉菜单鼠标滑过展开效果
2017/10/31 Javascript
用p5.js制作烟花特效的示例代码
2018/03/21 Javascript
微信小程序实现圆形进度条动画
2020/11/18 Javascript
新手快速入门微信小程序组件库 iView Weapp
2019/06/24 Javascript
layui监听工具栏的实例(操作列表按钮)
2019/09/10 Javascript
vue 动态组件用法示例小结
2020/03/06 Javascript
玩转python爬虫之URLError异常处理
2016/02/17 Python
Pycharm学习教程(2) 代码风格
2017/05/02 Python
Python处理中文标点符号大集合
2018/05/14 Python
Biblibili视频投稿接口分析并以Python实现自动投稿功能
2021/02/05 Python
Html5 webRTC简单实现视频调用的示例代码
2020/09/23 HTML / CSS
外贸业务员的岗位职责
2013/11/23 职场文书
好矿嫂事迹材料
2014/01/21 职场文书
六一儿童节主持词
2014/03/21 职场文书
热门专业求职信
2014/05/24 职场文书
学校总务处领导班子民主生活会对照检查材料思想汇报
2014/09/27 职场文书
2015医院个人工作总结范文
2015/05/21 职场文书
Python如何识别银行卡卡号?
2021/06/10 Python