Python自定义类的数组排序实现代码


Posted in Python onAugust 28, 2016

首先把实现方法写出来,其实很简单,只需要一句代码即可:

productlist.sort(lambda p1, p2:cmp(p1.getPrice(), p2.getPrice()))

数组productlist中存储的是自定义类Product,Product有一个方法是返回商品的价格,于是对productlist按照Product的价格从低到高进行排序,仅需要如此简单的一行代码即可实现。

Python真的是一门简洁而强大的语言,实际上,我也是从写出一行代码之后,才真正感受到这门语言的魅力。

写到这里,顺便介绍一下lambda表达式的相关知识,现在很多语言都支持lambda表达式,甚至包括.Net。

lambda函数一般也被叫做匿名函数,先来看一个最简单例子:

def test(x):
 return x**2
print test(4)

如果使用lambda,则语法如下:

test = lambda x : x**2
print test(4)

从上面的例子可以看出,lambda语句构建的其实是一个函数对象,lambda最大的特点就是,可以省去定义函数的过程,让代码更加精简。

关于lambda的语法
lambda语句中,冒号前是参数,可以有多个,用逗号隔开;冒号右边是返回值。

Python 相关文章推荐
Python各类图像库的图片读写方式总结(推荐)
Feb 23 Python
Python实现合并同一个文件夹下所有txt文件的方法示例
Apr 26 Python
Python中利用xpath解析HTML的方法
May 14 Python
python 获取字符串MD5值方法
May 29 Python
详解Python3.6的py文件打包生成exe
Jul 13 Python
pandas分区间,算频率的实例
Jul 04 Python
使用Fabric自动化部署Django项目的实现
Sep 27 Python
python几种常用功能实现代码实例
Dec 25 Python
python opencv肤色检测的实现示例
Dec 21 Python
python解决12306登录验证码的实现
Apr 18 Python
python 爬取天气网卫星图片
Jun 07 Python
python库sklearn常用操作
Aug 23 Python
Python 基于Twisted框架的文件夹网络传输源码
Aug 28 #Python
Django URL传递参数的方法总结
Aug 28 #Python
python 网络编程常用代码段
Aug 28 #Python
Fabric 应用案例
Aug 28 #Python
Python两个内置函数 locals 和globals(学习笔记)
Aug 28 #Python
Python 提取dict转换为xml/json/table并输出的实现代码
Aug 28 #Python
python解决方案:WindowsError: [Error 2]
Aug 28 #Python
You might like
DC动画很好看?新作烂得令人发指,名叫《红色之子》
2020/04/09 欧美动漫
php+mysql删除指定编号员工信息的方法
2015/01/14 PHP
php约瑟夫问题解决关于处死犯人的算法
2015/03/23 PHP
PHP实现XML与数据格式进行转换类实例
2015/07/29 PHP
PHP中使用GD库绘制折线图 折线统计图的绘制方法
2015/11/09 PHP
基于PHP的加载类操作以及其他两种魔术方法的应用实例
2017/08/28 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
Laravel框架自定义分页样式操作示例
2020/01/26 PHP
使用js解决由border属性引起的div宽度问题
2013/11/26 Javascript
JSON.parse()和JSON.stringify()使用介绍
2014/06/20 Javascript
JavaScript字符串对象substr方法入门实例(用于截取字符串)
2014/10/16 Javascript
jQuery实现气球弹出框式的侧边导航菜单效果
2015/09/22 Javascript
3种不同的ContextMenu右键菜单实现代码
2016/11/03 Javascript
微信小程序实现多个按钮toggle功能的实例
2017/06/13 Javascript
解决JQuery全选/反选第二次失效的问题
2017/10/11 jQuery
浅谈高大上的微信小程序中渲染html内容—技术分享
2018/10/25 Javascript
Web安全之XSS攻击与防御小结
2018/12/13 Javascript
详解python3实现的web端json通信协议
2016/12/29 Python
http请求 request失败自动重新尝试代码示例
2018/01/25 Python
Python生成rsa密钥对操作示例
2019/04/26 Python
Python迭代器协议及for循环工作机制详解
2020/07/14 Python
html5-websocket基于远程方法调用的数据交互实现
2012/12/04 HTML / CSS
linux面试题参考答案(8)
2015/08/11 面试题
什么是继承
2013/12/07 面试题
应届毕业生的个人自我鉴定
2013/10/24 职场文书
岳父生日宴会答谢词
2014/01/13 职场文书
静心口服夜广告词
2014/03/20 职场文书
新闻发布会主持词
2014/03/28 职场文书
房产代理公证处委托书
2014/04/04 职场文书
连锁超市项目计划书
2014/09/15 职场文书
交警失职检讨书
2015/01/26 职场文书
关于清明节的演讲稿2015
2015/03/18 职场文书
施工单位工程部经理岗位职责
2015/04/09 职场文书
队列队形口号
2015/12/25 职场文书
创业计划书之家教托管
2019/09/25 职场文书
JS数组的常用方法整理
2021/03/31 Javascript