gpt4 book ai didi

python - 可以在 lambda 中完成循环吗?

转载 作者:太空宇宙 更新时间:2023-11-04 07:16:47 25 4
gpt4 key购买 nike

我尝试在 lambda 函数中循环,我的代码是:

zxm=lambda k:[k+x for x in range(k)]
print(zxm(5))

我得到的输出是当我给出输入时:

[5,6,7,8,9]

然而,我的预期输出是所有 5 个数字的总和,我想要:

35

我们如何在 lambda 中循环?另外,有没有递归的机会?

最佳答案

这本身不是循环,而是列表理解。例如,您可以使用 sum 来获取总和。

In [7]: zxm = lambda k: sum(k+x for x in range(k))

In [8]: zxm(5)
Out[8]: 35

注意像for这样的语句在lambda中是被禁止的;只允许使用表达式,因此虽然您可以使用列表理解,但您不能编写传统的 for 循环。

关于python - 可以在 lambda 中完成循环吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41387023/

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