首页 > 解决方案 > 使用列表推导计算所有列表元素的总和

问题描述

不知道我现在是否只是愚蠢,但我正在尝试将一个 int 列表转换为一个 int。问题是我试图仅通过列表理解来做到这一点,但我每次都失败了

class MathStuff():
def add_stuff(self, *stuff):
    items = 0
    numbers = (i for i in stuff)
    items += [i for i in e]
#trying to do "for i in (i for i in stuff)" but assign it to a variable

我已经尝试了多种方法来做到这一点而没有“for循环”,但我的谷歌搜索遇到了障碍。

标签: pythonfor-looplist-comprehension

解决方案


如果您有一个数字列表l,并且您不想使用sum. 我想你可以照常做:

l = range(1, 100)

s = 0
for i in l:
  s += i

或者更实用的方法。

from operator import add
from functools import reduce

l = range(1, 100)

reduce(add, l)

但是,我看不出理解如何帮助您解决这个问题。


推荐阅读