python - 如何用 def 函数替换 lambda 函数?
问题描述
students2 = [
{'name' : "harshit","score":90,'age':24},
{'name' : "mohit","score":70,'age':19},
{'name' : "rohit","score":60,'age':23}
]
print(max(students2, key = lambda i: i.get("score")))
输出:
{'name': 'harshit', 'score': 90, 'age': 24}
如何用函数替换 lambdadef
函数?
解决方案
您可以简单地将一些变量分配给 def。就像是:
def get_score(students):
return students.get("score")
print(max(students2), key=get_score)
这是函数式编程中的一个概念,称为一等函数。基本上,这意味着函数与变量的处理方式相同,可以传递给函数、从函数返回等
推荐阅读
- spring-boot - SpringBoot log4j AppenderSkeleton 方法 append(LoggingEvent) 必须覆盖或实现超类型方法
- sql - 使用 TSTZRANGE 在 PostgreSQL 中为医生创建可用时间
- java - 使用 Axios 从 React 获取请求中的 Spring Pageable 对象
- angular - 将数组映射到 Angular 材质树 - Angular 9
- android - 使用 keytool 构建的每个 .keystore 文件是否都是唯一的?
- azure - 在 ARM 模板中应用 Azure Key Vault no-self-perms 属性
- apache-flink - Flink:启动 scala-shell 时出错 - 无法创建 DispatcherResourceManagerComponent
- css - 如何使 WP_Error 消息出现在密码字段下?
- html - 无法实现持仓
- android - LiveData、DiffUtil 和对象引用