在Python中,为什么列表切片有时会像列表的一部分一样,并且表现得像列表的副本一样?

时间:2018-03-13 14:53:02

标签: python python-3.x list variable-assignment slice

在第一个示例中,列表的切片的行为类似于列表的一部分:

>>> l = [1, 2, 3]
>>> l[0:2] = []
>>> l
[3]

在第二个示例中,列表的切片的行为类似于列表的副本

>>> l = [1, 2, 3]
>>> k = l[0:2]
>>> k = []
>>> l[1, 2, 3]

哪种一般规则有所不同? (我猜它与某种方式的赋值语义有关。在第一个例子中l[0:2]指的是l的一片,但在第二个例子中k仅指一个副本切片l。在第二个例子中,l[0:2]是指副本还是部分?)

0 个答案:

没有答案