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

我是 lambda 函数的新手。我正在尝试获取列表中元素的总和,但反复面临这个问题。

http://img3.mukewang.com/63b531f60001aa1f06920262.jpg

在跟进在线教程时(教程链接)。以下代码对他们来说工作正常。但是,我面临着同样的问题。

http://img2.mukewang.com/63b5320000017dfa06900173.jpg

有人可以帮助我理解为什么会这样吗?



翻过高山走不出你
浏览 142回答 4
4回答

不负相思意

试试这个:sum = __builtins__.sumli = [5, 7, 22, 97, 54, 62, 77, 23, 73, 61]l = lambda *x: sum(x)l(*li)如果它有效,那么这意味着你已经覆盖了sum其他地方。

函数式编程

您遇到这个问题是因为您必须sum在当前的 jupyter-notebook 会话中定义了一个名为某处的函数。请像这样更改您的代码-import mathli = [1,2,3]l = lambda *x: math.fsum(x)l(*li)如果您仍然遇到同样的错误,请告诉我们。

MMMHUHU

li = [1,2,3,4,5,6,7,8,9,10]l = (lambda *x: sum(x))print(l(*li))试试这段代码,这是正确执行的。在 Tutorialspoint python 解释器中执行的答案的屏幕截图

Smart猫小萌

这对我有用:l = [1,2,3,4]fun = (lambda *x: sum(x))print(fun(*l))print((lambda *x: sum(x))(1,2,3))输出:106
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python