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实现数通设备端口使用情况监控实例
Jul 15 Python
Python selenium 父子、兄弟、相邻节点定位方式详解
Sep 15 Python
利用Python批量压缩png方法实例(支持过滤个别文件与文件夹)
Jul 30 Python
Python实现比较扑克牌大小程序代码示例
Dec 06 Python
Python实现基于POS算法的区块链
Aug 07 Python
对python指数、幂数拟合curve_fit详解
Dec 29 Python
关于pytorch中网络loss传播和参数更新的理解
Aug 20 Python
PyCharm2019安装教程及其使用(图文教程)
Sep 29 Python
Python库skimage绘制二值图像代码实例
Apr 10 Python
Python内置异常类型全面汇总
May 28 Python
如何在Python3中使用telnetlib模块连接网络设备
Sep 21 Python
如何理解python接口自动化之logging日志模块
Jun 15 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
PHP、Python和Javascript的装饰器模式对比
2015/02/03 PHP
php获取网页上所有链接的方法
2015/04/03 PHP
PHP 读取文本文件内容并分页显示
2016/01/02 PHP
原生PHP实现导出csv格式Excel文件的方法示例【附源码下载】
2019/03/07 PHP
php正则表达式使用方法整理集合
2020/01/31 PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
2020/02/16 PHP
学习并汇集javascript匿名函数
2010/11/25 Javascript
关于IE BUG与字符串截取substr的解决办法
2013/04/10 Javascript
Javasipt:操作radio标签详解
2013/12/30 Javascript
你未必知道的JavaScript和CSS交互的5种方法
2014/04/02 Javascript
jquery实现input框获取焦点的方法
2017/02/06 Javascript
jQuery 判断元素整理汇总
2017/02/28 Javascript
layui弹出层效果实现代码
2017/05/19 Javascript
JavaScript异步上传图片文件的实例代码
2017/07/04 Javascript
微信小程序+腾讯地图开发实现路径规划绘制
2019/05/22 Javascript
javascript实现贪吃蛇经典游戏
2020/04/10 Javascript
[02:02]2018DOTA2亚洲邀请赛Mineski赛前采访
2018/04/04 DOTA
可能是最全面的 Python 字符串拼接总结【收藏】
2018/07/09 Python
使用Python自动化破解自定义字体混淆信息的方法实例
2019/02/13 Python
pymysql模块的操作实例
2019/12/17 Python
Python批量将图片灰度化的实现代码
2020/04/11 Python
python在linux环境下安装skimage的示例代码
2020/10/14 Python
Infababy英国:婴儿推车、Travel System婴儿车和婴儿汽车座椅销售
2018/05/23 全球购物
新加坡领先的在线生活方式和杂货购物网站:EAMART
2019/04/02 全球购物
北美最大的零售退货翻新商:VIP Outlet
2019/11/21 全球购物
自然健康的概念:Natural Healthy Concepts
2020/01/26 全球购物
自考毕业自我鉴定范文
2013/10/27 职场文书
合同协议书格式
2014/04/18 职场文书
纪念九一八事变演讲稿:忘记意味着背叛
2014/09/14 职场文书
实习生个人总结范文
2015/02/28 职场文书
周恩来的四个昼夜观后感
2015/06/03 职场文书
运动会宣传稿50字
2015/07/23 职场文书
初中同学会致辞
2015/08/01 职场文书
《7的乘法口诀》教学反思
2016/02/18 职场文书
vue3中provide && inject的使用
2021/07/01 Vue.js
Windows7下FTP搭建图文教程
2022/08/05 Servers