gpt4 book ai didi

python - 解释这个 lambda

转载 作者:太空狗 更新时间:2023-10-30 02:32:11 24 4
gpt4 key购买 nike

下面是一个 Python 字典(来自 OpenERP 应用程序),其中的字段通过 lambda 进行默认。我可以看到如何使用此模式,显然“active”是一个 bool 值,“level”是一个整数,“price”是一个 float 。

但是有人可以准确解释这是如何工作的吗?这里的“a”代表什么?

_defaults = {
'active': lambda *a: False,
'level': lambda *a: 1,
'price': lambda *a: 1.0,
}

最佳答案

*a 语法捕获任意数量的参数; lambda 接受 0 个或多个参数,并且无论如何都返回一个常量值。

本质上,这些 lambda 忽略传入的所有参数。

语法也可以用在函数中,还有一个关键字参数等价于**keywords的形式,产生一个映射。

快速演示:

>>> demo = lambda *a: a
>>> demo()
()
>>> demo(1, 2, 3)
(1, 2, 3)

demo 这里返回捕获的任何*a;一个包含 0 个或多个值的元组,这些值是调用的参数。

关于python - 解释这个 lambda,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19743727/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com