首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么python中列表的"sum“会使其扁平化?

为什么python中列表的"sum“会使其扁平化?
EN

Stack Overflow用户
提问于 2019-06-14 02:08:30
回答 1查看 613关注 0票数 4

我最近在python中发现了一个有趣的特性。

如果您键入:

代码语言:javascript
运行
复制
y=[[1,2],[3,4]]
sum(y,[])

输出为:[1, 2, 3, 4]

有人知道为什么一系列列表与一个空列表的总和给出了y的平面化版本(即:y的所有子列表都是一个列表)吗?

我原本希望输出是一个串联:[1,2],[3,4],[]

谢谢

EN

回答 1

Stack Overflow用户

发布于 2019-06-14 02:13:00

sum遍历可迭代对象并添加每个元素。碰巧的是,对于列表,加法被定义为串联。通过将第二个参数(start)设置为[],该函数从一个列表开始,并不断向列表中添加元素。有效地:

代码语言:javascript
运行
复制
sum([[1, 2], [3, 4]], []) == [] + [1, 2] + [3, 4]
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56586296

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档