为了账号安全,请及时绑定邮箱和手机立即绑定

使用 Lambda 函数和变量参数求和

使用 Lambda 函数和变量参数求和

翻过高山走不出你 2023-01-04 15:56:08
我是 lambda 函数的新手。我正在尝试获取列表中元素的总和,但反复面临这个问题。在跟进在线教程时(教程链接)。以下代码对他们来说工作正常。但是,我面临着同样的问题。有人可以帮助我理解为什么会这样吗?
查看完整描述

4 回答

?
不负相思意

TA贡献1777条经验 获得超10个赞

试试这个:


sum = __builtins__.sum

li = [5, 7, 22, 97, 54, 62, 77, 23, 73, 61]

l = lambda *x: sum(x)

l(*li)

如果它有效,那么这意味着你已经覆盖了sum其他地方。


查看完整回答
反对 回复 2023-01-04
?
函数式编程

TA贡献1807条经验 获得超9个赞

您遇到这个问题是因为您必须sum在当前的 jupyter-notebook 会话中定义了一个名为某处的函数。


请像这样更改您的代码-


import math


li = [1,2,3]

l = lambda *x: math.fsum(x)

l(*li)

如果您仍然遇到同样的错误,请告诉我们。


查看完整回答
反对 回复 2023-01-04
?
MMMHUHU

TA贡献1834条经验 获得超8个赞

li = [1,2,3,4,5,6,7,8,9,10]

l = (lambda *x: sum(x))

print(l(*li))

试试这段代码,这是正确执行的。


在 Tutorialspoint python 解释器中执行的答案的屏幕截图


查看完整回答
反对 回复 2023-01-04
?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

这对我有用:


l = [1,2,3,4]

fun = (lambda *x: sum(x))

print(fun(*l))


print((lambda *x: sum(x))(1,2,3))

输出:


10

6


查看完整回答
反对 回复 2023-01-04
  • 4 回答
  • 0 关注
  • 141 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信