gpt4 book ai didi

python lambda 使用多个参数引发变量未定义错误

转载 作者:太空宇宙 更新时间:2023-11-03 12:37:55 25 4
gpt4 key购买 nike

在尝试编写我理解的一行斐波那契数列时,我遇到了 fib = lambda a, b: b, a + b as "'b'未定义”

但是,当我执行 sum = a, b, c: a + b + c 时,我没有收到任何错误。 sum(1, 2, 3) 完美运行并返回 6

我研究了全局变量,发现如果我在开始前将 a 和 b 设置为 Null,它不会给我报错,但有没有办法不这样做?

最佳答案

你需要在 lambda 主体周围加上括号:

fib = lambda a, b: (b, a + b)

否则Python认为是这样的:

fib = (lambda a, b: b), a + b

顺便说一下,如果您只是要将函数分配给一个名称,那么使用 lambda 没有任何实际意义。

关于python lambda 使用多个参数引发变量未定义错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39313318/

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