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实现的udp协议Server和Client代码实例
Jun 04 Python
python实现监控linux性能及进程消耗性能的方法
Jul 25 Python
Python、Javascript中的闭包比较
Feb 04 Python
Python3搜索及替换文件中文本的方法
May 22 Python
Python分治法定义与应用实例详解
Jul 28 Python
python实现员工管理系统
Jan 11 Python
shell命令行,一键创建 python 模板文件脚本方法
Mar 20 Python
python 定义n个变量方法 (变量声明自动化)
Nov 10 Python
Django实现auth模块下的登录注册与注销功能
Oct 10 Python
如何将你的应用迁移到Python3的三个步骤
Dec 22 Python
django使用JWT保存用户登录信息
Apr 22 Python
scrapy在python爬虫中搭建出错的解决方法
Nov 22 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
几个php应用技巧
2008/03/27 PHP
php写的AES加密解密类分享
2014/06/20 PHP
javascript下判断一个对象是否具有指定名称的属性的的代码
2010/01/11 Javascript
parseInt parseFloat js字符串转换数字
2010/08/01 Javascript
实现只能输入数字的input不用replace方法
2013/09/12 Javascript
捕获和分析JavaScript Error的方法
2014/03/25 Javascript
js使用Array.prototype.sort()对数组对象排序的方法
2015/01/28 Javascript
ajax+jQuery实现级联显示地址的方法
2015/05/06 Javascript
javascript字符串替换函数如何一次性全部替换掉
2015/10/30 Javascript
jQuery实现标题有打字效果的焦点图代码
2015/11/16 Javascript
基于JS实现的随机数字抽签实例
2016/12/08 Javascript
Jquery Easyui对话框组件Dialog使用详解(14)
2016/12/19 Javascript
JavaScript简单验证表单空值及邮箱格式的方法
2017/01/20 Javascript
微信小程序 支付功能开发错误总结
2017/02/21 Javascript
Angularjs单选框相关的示例代码
2017/08/17 Javascript
vue地址栏直接输入路由无效问题的解决
2018/11/15 Javascript
Node.js+Vue脚手架环境搭建的方法步骤
2020/03/08 Javascript
JSON 入门教程基础篇 json入门学习笔记
2020/09/22 Javascript
[41:52]2018DOTA2亚洲邀请赛3月29日 小组赛A组 TNC VS OpTic
2018/03/30 DOTA
Python算法之求n个节点不同二叉树个数
2017/10/27 Python
浅谈python requests 的put, post 请求参数的问题
2019/01/02 Python
Python两台电脑实现TCP通信的方法示例
2019/05/06 Python
解决pycharm最左侧Tool Buttons显示不全的问题
2019/12/17 Python
pytorch 模拟关系拟合——回归实例
2020/01/14 Python
Python matplotlib画曲线例题解析
2020/02/07 Python
春节联欢晚会主持词范文
2014/03/24 职场文书
企业优秀员工事迹材料
2014/05/28 职场文书
销售团队口号大全
2014/06/06 职场文书
2014年村计划生育工作总结
2014/11/14 职场文书
工程技术员岗位职责
2015/04/11 职场文书
2015年银行员工工作总结
2015/04/24 职场文书
教师教育心得体会
2016/01/19 职场文书
教你怎么用Python处理excel实现自动化办公
2021/04/30 Python
浅谈GO中的Channel以及死锁的造成
2022/03/18 Golang
Python学习之迭代器详解
2022/04/01 Python