首页 > 解决方案 > 如何用 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函数?

标签: python

解决方案


您可以简单地将一些变量分配给 def。就像是:

def get_score(students):
    return students.get("score")

print(max(students2), key=get_score)

这是函数式编程中的一个概念,称为一等函数。基本上,这意味着函数与变量的处理方式相同,可以传递给函数、从函数返回等


推荐阅读