详解python中的lambda与sorted函数
作者:Jaywhenxiang 时间:2022-04-29 00:01:56
lambda表达式
python中形如:
lambda parameters: expression
称为lambda
表达式,用于创建匿名函数,该表达式会产生一个函数对象。
该对象的行为类似于用以下方式定义的函数:
def <lambda>(parameters):
return expression
python中的lambda
函数可以接受任意数量的参数,但只能有一个表达式。也就是说,lambda
表达式适用于表示内部仅包含1行表达式的函数。那么lambda
表达式的优势就很明显了:
使用
lambda
表达式可以省去单行函数的定义过程,使代码更加简洁;适用于不需要多次复用的函数
例:
y = lambda x: x*x
print(y(3))
> 9
fx = lambda x, y, z: x+y+z
print(fx(3, 4, 5))
> 12
sorted()
python3.x中sorted函数:
sorted(iterable, *, key=None, reverse=False)
sorted
函数会根据iterable
中的项返回一个新的已排序列表。
其中key
与reverse
是两个可选参数,它们都必须指定为关键字参数;
key:指定带有单个参数的函数,用于从iterable的每个元素中提取用于比较的键,默认为None
,即直接比较元素;
reverse:为一个布尔值,用来指定排序规则,默认为False
(升序)。
python2的sorted函数中还有一个参数cmp,python3的sorted中已经没有这个参数了。
与list.sort()方法不同的是,sorted()是有返回值的,而list.sort()的返回值为None;并且list.sort()只能对list进行排序,而sorted()可以接收任何的iterable
例:
# list
foo = [5, 7, 2, 9, 1]
bzz = sorted(foo)
print(bzz)
# > [1, 2, 5, 7, 9]
print(sorted(foo))
# > [1, 2, 5, 7, 9]
print(sorted(foo, reverse = True))
# > [9, 7, 5, 2, 1]
print(sorted(foo, key = lambda x: x*-1))
# > [9, 7, 5, 2, 1]
# dict
bar = {'java': 14, 'c': 16, 'python': 9, 'cpp': 6, 'csharp': 4}
print(sorted(bar))
# > ['c', 'cpp', 'csharp', 'java', 'python']
print(sorted(bar.items(), key = lambda kv: kv[1], reverse = True))
# > [('c', 16), ('java', 14), ('python', 9), ('cpp', 6), ('csharp', 4)]
来源:https://www.cnblogs.com/Jaywhen-xiang/p/13580455.html
标签:python,lambda,函数,sorted
0
投稿
猜你喜欢
浅谈pytorch 模型 .pt, .pth, .pkl的区别及模型保存方式
2023-11-25 12:41:38
python+opencv边缘提取与各函数参数解析
2023-12-24 11:17:54
spring boot整合mybatis使用c3p0数据源连接mysql
2024-01-25 08:13:15
Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】
2023-02-24 00:19:25
Python基于yaml文件配置logging日志过程解析
2022-04-02 10:50:36
Python 爬虫模拟登陆知乎
2023-11-28 14:32:08
详谈python3 numpy-loadtxt的编码问题
2021-08-28 06:42:09
将Python脚本打包成MACOSAPP程序过程
2022-03-07 14:20:43
SQL Server修改标识列方法 如自增列的批量化修改
2024-01-19 04:59:22
python创建关联数组(字典)的方法
2021-11-22 06:51:18
selenium鼠标操作实战案例详解
2023-09-18 04:08:40
Python文件的应用之序列化与反序列化详解
2021-06-19 22:20:45
TensorFlow 合并/连接数组的方法
2021-08-19 16:28:35
在MAC OS X上安装MYSQL
2024-01-28 17:25:46
教你轻松掌握如何保护MySQL中的重要数据
2008-12-19 17:42:00
简单了解python 邮件模块的使用方法
2021-07-11 00:08:14
关于pyinstaller 打包多个py文件的问题
2022-01-19 17:49:10
vue中的数据绑定原理的实现
2024-05-05 09:09:34
修复 Mac brew 安装 mongodb 报 Error: No available formula with the name ‘mongodb’ 问题详解
2024-01-18 17:10:50
pycharm下打开、执行并调试scrapy爬虫程序的方法
2022-08-07 09:30:52