Python中sort和sorted函数代码解析


Posted in Python onJanuary 25, 2018

本文研究的主要是Python中sort和sorted函数的相关内容,具体如下。

一、sort函数

sort函数是序列的内部函数

函数原型:

L.sort(cmp=None, key=None, reverse=False)

函数作用:

它是把L原地排序,也就是使用后并不是返回一个有序的序列副本,而是把当前序列变得有序

参数说明:

(1) cmp参数

cmp接受一个函数,拿整形举例,形式为:

def f(a,b):
   return a-b

如果排序的元素是其他类型的,如果a逻辑小于b,函数返回负数;a逻辑等于b,函数返回0;a逻辑大于b,函数返回正数就行了

(2) key参数

key也是接受一个函数,不同的是,这个函数只接受一个元素,形式如下

def f(a):
   return len(a)

key接受的函数返回值,表示此元素的权值,sort将按照权值大小进行排序

(3) reverse参数

接受False 或者True 表示是否逆序

sort举例:

(1)按照元素长度排序

L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}]
def f(x):
  return len(x)
sort(key=f)
print L

输出:

[{1: 9}, {1: 5, 3: 4}, {1: 3, 6: 3}, {1: 1, 2: 4, 5: 6}]

(2)按照每个字典元素里面key为1的元素的值排序

L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}]
def f2(a,b):
  return a[1]-b[1]
L.sort(cmp=f2)
print L

输出:

[{1: 1, 2: 4, 5: 6}, {1: 3, 6: 3}, {1: 5, 3: 4}, {1: 9}]

二、sorted函数

sorted函数是内建函数,他接受一个序列,返回有序的副本

他与sort的唯一区别就是会返回副本

总结

以上就是本文关于Python sort sorted函数代码解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
使用Python生成url短链接的方法
May 04 Python
十个Python程序员易犯的错误
Dec 15 Python
Python使用面向对象方式创建线程实现12306售票系统
Dec 24 Python
python算法表示概念扫盲教程
Apr 13 Python
对Python random模块打乱数组顺序的实例讲解
Nov 08 Python
python re正则匹配网页中图片url地址的方法
Dec 20 Python
通过python3实现投票功能代码实例
Sep 26 Python
Python如何使用BeautifulSoup爬取网页信息
Nov 26 Python
Python常见反爬虫机制解决方案
Jun 01 Python
浅谈python 调用open()打开文件时路径出错的原因
Jun 05 Python
Python手动或自动协程操作方法解析
Jun 22 Python
Python lxml库的简单介绍及基本使用讲解
Dec 22 Python
django在接受post请求时显示403forbidden实例解析
Jan 25 #Python
Python微信公众号开发平台
Jan 25 #Python
Python实现PS图像调整黑白效果示例
Jan 25 #Python
1 行 Python 代码快速实现 FTP 服务器
Jan 25 #Python
http请求 request失败自动重新尝试代码示例
Jan 25 #Python
Python实现PS图像调整颜色梯度效果示例
Jan 25 #Python
Python使用requests发送POST请求实例代码
Jan 25 #Python
You might like
PHP4和PHP5共存于一系统
2006/11/17 PHP
让Json更懂中文(JSON_UNESCAPED_UNICODE)
2011/10/27 PHP
php中的异常和错误浅析
2017/05/03 PHP
详解Yaf框架PHPUnit集成测试方法
2017/12/27 PHP
JavaScript性能陷阱小结(附实例说明)
2010/12/28 Javascript
JavaScript中json对象和string对象之间相互转化
2012/12/26 Javascript
JavaScript实现存储HTML字符串示例
2014/04/21 Javascript
jquery实现导航固定顶部的效果仿蘑菇街
2014/10/22 Javascript
js字符串完全替换函数分享
2014/12/03 Javascript
jQuery插件实现静态HTML验证码校验
2015/11/06 Javascript
jQuery手动点击实现图片轮播特效
2020/04/20 Javascript
javascript中的3种继承实现方法
2016/01/27 Javascript
BootStrap 图片样式、辅助类样式和CSS组件的实例详解
2017/01/20 Javascript
angularjs实现多张图片上传并预览功能
2017/02/24 Javascript
jQuery使用DataTable实现删除数据后重新加载功能
2017/02/27 Javascript
vue项目持久化存储数据的实现代码
2018/10/01 Javascript
微信小程序拍照和摄像功能实现方法示例
2019/02/01 Javascript
Vue页面切换和a链接的本质区别详解
2019/11/12 Javascript
[04:27]DOTA2官方论坛水友赛集锦
2013/09/16 DOTA
[47:39]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 LGD vs OPTIC
2018/03/31 DOTA
Python下rrdtool模块的基本使用方法
2015/11/13 Python
python利用dir函数查看类中所有成员函数示例代码
2017/09/08 Python
Python配置mysql的教程(推荐)
2017/10/13 Python
Python+Turtle动态绘制一棵树实例分享
2018/01/16 Python
Python 的AES加密与解密实现
2019/07/09 Python
TensorFlow tf.nn.max_pool实现池化操作方式
2020/01/04 Python
Python : turtle色彩控制实例详解
2020/01/19 Python
使用CSS3制作版头动画效果
2020/12/24 HTML / CSS
幼儿园国庆节活动方案
2014/02/01 职场文书
《一件运动衫》教学反思
2014/02/19 职场文书
家长会演讲稿
2014/04/26 职场文书
2014年小学体育工作总结
2014/12/11 职场文书
九华山导游词
2015/02/03 职场文书
销售业务员岗位职责
2015/02/13 职场文书
2015年高考寄语或鼓励的话
2015/03/23 职场文书
Mysql将字符串按照指定字符分割的正确方法
2022/05/30 MySQL