切片分配

使用切片的另一个简洁特征是切片分配。Python 允许你在单个操作中分配新切片以替换列表的旧切片。

这意味着如果你有一个列表,则可以在一个作业中替换多个成员:

lst = [1, 2, 3]
lst[1:3] = [4, 5]
print(lst) # Out: [1, 4, 5]

分配的大小也不应该匹配,因此如果要将旧切片替换为大小不同的新切片,则可以:

lst = [1, 2, 3, 4, 5]
lst[1:4] = [6]
print(lst) # Out: [1, 6, 5]

也可以使用已知的切片语法来执行替换整个列表之类的操作:

lst = [1, 2, 3]
lst[:] = [4, 5, 6]
print(lst) # Out: [4, 5, 6]

或者只是最后两个成员:

lst = [1, 2, 3]
lst[-2:] = [4, 5, 6]
print(lst) # Out: [1, 4, 5, 6]