二维数组的python总和如何返回列表

我遇到了一段 python 代码,其中二维数组的求和函数计算为一个列表。

例如:

a = [['a','b','c'],['d','e','f'],['g','h','i']]]

sum(a,[])回报['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']

为什么会这样?也许我缺少一些基本的东西,但想了解它的机制。


开满天机
浏览 83回答 2
2回答

呼唤远方

sum(iterable, /, start=0):Sums 从左到右开始和 iterable 的项目并返回总数所以对于你的代码,由产生的操作sum是[] + ['a','b','c'] + ['d','e','f'] + ['g','h','i']这是一个列表串联,并产生:['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']请注意,如果您不提供 的start值[],则 sum 使用默认start值0并执行:0 + ['a','b','c'] + ['d','e','f'] + ['g','h','i']结果是TypeError:类型错误:+ 不支持的操作数类型:'int' 和 'list'

aluckdog

希望你能像这里一样简单理解a = [['a','b','c'],['d','e','f'],['g','h','i']]它是这样做的如下:result = [] for list in a:     result += list现在返回结果列表:print(result)我还通知你上面的方法是快速的 sum(a, []) 方法Sum 函数不是那样工作的,但你可以很容易地理解它是如何工作的
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python