如何在python中的列表中添加整数?

Max*_*hms 4 python integer list add

如果我有一个像这样的清单

x = [2, 4, 7, 12, 3]
Run Code Online (Sandbox Code Playgroud)

我会用什么功能/过程将所有数字加在一起?

除了使用sum()之外还有什么方法吗?

The*_*uit 20

x = [2, 4, 7, 12, 3]
sum_of_all_numbers= sum(x)
Run Code Online (Sandbox Code Playgroud)

或者你可以尝试这个:

x = [2, 4, 7, 12, 3] 
sum_of_all_numbers= reduce(lambda q,p: p+q, x)
Run Code Online (Sandbox Code Playgroud)

Reduce是一种在列表的每个元素上累积执行函数的方法.它可以执行任何功能,因此如果您定义自己的模数函数,它将在列表的每个元素上重复执行该功能.为了避免定义执行p + q的整个函数,您可以改为使用lambda函数.

  • 对于数字类型,`reduce`不比**sum更高效,否则`sum`永远不会被添加到语言中.使用`operator.add`代替lambda函数也更有效 (3认同)
  • 在什么意义上`reduce(lambda q,p:p + q,x)`"比'sum(x)`更高效"? (2认同)

jac*_*ill 15

这个:

sum([2, 4, 7, 12, 3])
Run Code Online (Sandbox Code Playgroud)

您可以使用sum()添加列表中的所有元素.

所以:

x = [2, 4, 7, 12, 3]
sum(x)
Run Code Online (Sandbox Code Playgroud)