首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python列表连接

python列表连接
EN

Stack Overflow用户
提问于 2012-04-03 09:29:59
回答 2查看 1.3K关注 0票数 1

我不太明白这是怎么回事

代码语言:javascript
复制
a=[1,2,3,4]
b=[5,6,7,8]

a[len(a):] = b似乎等同于a.extend(b)。当我说a[(len(a):]时,不是指a[4:<end of list a>] = b吗?

`a=b中没有任何内容,

[]

为什么我会得到[1,2,3,4,5,6,7,8]作为结果?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-03 09:33:19

切片赋值可用于将一个序列插入到另一个序列中(可变)。

代码语言:javascript
复制
>>> a = [1, 2, 3]
>>> a[1:1] = [4, 5]
>>> a
[1, 4, 5, 2, 3]

您的示例只是在末尾插入的一个实例。

票数 10
EN

Stack Overflow用户

发布于 2012-04-03 09:37:28

切片表示法是[start : stop]。对列表切片(如[start:] )的赋值会导致它在索引start处插入右侧的序列。但是因为切片没有stop部分,所以它总是会添加整个序列(没有上限)。

在本例中,您在索引4处插入,而索引4还不存在,所以它将其插入到原始序列的末尾。

Python Docs 3.1.4 Lists

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9985995

复制
相关文章

相似问题

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