首页 > 其他 > 详细

sorted基本介绍

时间:2014-01-17 09:13:34      阅读:349      评论:0      收藏:0      [点我收藏+]

1、lambda 运算符

  使用lambda语句可以创建表达式形式的匿名函数:

lambda args : expression

  args是以逗号分隔的参数列表,而expression是用到这些参数的表达式,例如:

a = lambda x, y: x + y
r = a(2, 3)  # r的值为5

  使用lambda语句定义的代码必须是合法的表达式。lambda语句中不能出现多条语句和其他非表达式语句,如for或while。lambda表达式遵循与函数相同的作用域规则。

  lambda的首要用途是指定短小的回调函数。

2、sorted(iterable[, cmp[, key[, reverse]]])

 

  返回一个经过排序的列表,源序列即是一个迭代器iterable。

 

  •   cmp是一个比较函数,它带有两个参数,返回值为负数(参数1小于参数2)、0(参数1等于参数2)、正数(参数1大于参数2)三种。
  •   key则是一个带一个参数的函数,这个参数即是iterable中的一项,函数体即是以哪种方式决定该项的大小。
  •   reverse为True代表反向排序。

  通常情况下,指定key和reverse两项进行排序要比指定cmp进行排序快。

  举例:

>>> students = [(‘john‘, ‘A‘, 15), (‘jane‘, ‘B‘, 12), (‘dave‘, ‘B‘, 10),]  
>>> sorted(students, key=lambda student : student[2])   # sort by age  
[(‘dave‘, ‘B‘, 10), (‘jane‘, ‘B‘, 12), (‘john‘, ‘A‘, 15)]  
bubuko.com,布布扣
>>> dic = {‘a‘:31,‘b‘:30,‘c‘:32}
>>> print sorted(dic.iteritems(), key=lambda d:d[1], reverse=False)
[(‘b‘, 30), (‘a‘, 31), (‘c‘, 32)]

# iteritems方法将字典转换为键值迭代器,每一项是一个元组(key, value)
bubuko.com,布布扣

sorted基本介绍

原文:http://www.cnblogs.com/zhangjing327/p/3523253.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!