python - 如何在python中添加列表元素

标签 python python-2.7

<分区>

例如我有一个这样的数字列表:

a = [10,[20,30],40] 

b = [[10,20],30]

现在我必须添加上面列表中的所有元素。 所以如果添加第一个列表,那么我应该得到如下答案:10+20+30+40 = 100。 对于第二个 b,如下所示:10+20+30 = 60。 该解决方案将被表示为一个函数。 我试过这个,但它只能在没有嵌套列表的情况下用于添加。

def sum(t):
    total = 0
    for x in t:
        total = total+x
    return total

现在谁能帮我解决python编程中的这类问题。 提前致谢!!!!!!

最佳答案

您可以使用reduce:

x = reduce(lambda prev,el: prev+([x for x in el] if type(el) is list else [el]), x, [])

并使用它的结果来提供你的循环。

def sum(t):
    t = reduce(lambda prev,el: prev+([x for x in el] if type(el) is list else [el]), t, [])
    total = 0
    for x in t:
        total = total+x
    return total

关于python - 如何在python中添加列表元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22535965/

相关文章:

python - 为什么即使我使用了 str(),仍然打印 'u' 前缀?

python - 如何在 python 2.7 上安装 mypy-lang?

python - 有什么方法可以选择函数是否使用默认参数?

具有任意索引的 Python 列表切片

python - 通过 importlib 以编程方式导入模块 - __path__ 未设置?

python - 从 Python 中的列表中删除数字的倍数

python - 根据值附加到存储在数据帧中的字典

python - 我的立体校正 (OpenCV) 图像是错误的。 PYTHON

python - :8080前端POST到:5000 flask 后端被CORS阻止(docker-compose)

python - 如何使用docker “can'解决PyCharm错误?打开文件 'path/to/file.py':[Errno 2]没有这样的文件或目录”?