切片插入问题,L [1:1]

Umu*_*bak 3 python slice

练习一些python,这是一个很容易抓住的语言.

我有

>>> L = [1,2,3,4]
>>> L[1:1] = [1,2,3]
>>> L
[1, 1, 2, 3, 2, 3, 4]
Run Code Online (Sandbox Code Playgroud)

所以第二行实际上L[1:1]是空列表,但是python如何理解插入[1,2,3]列表从中开始1.我猜有一些内部对我们来说是不透明的,显然,我猜它会L[1:1]返回索引的引用,1即使它返回一个空列表...

祝福,Umut

Ned*_*der 5

L[1:1]表示L从索引1开始的列表片段(第二个元素),最多但不包括索引1.因此它是一个空列表.在作业的右侧,它只是一个匿名的空列表.但是在左侧,赋值知道切片的位置,并且可以将新列表值拼接到适当的位置.