例如:
x = [0] * 10
x[2:8] = [1] * 2
结果变成:
[0,0,1,1,0,0]
为什么会发生这种情况?我没有改变x的长度,但它自动变为6。
此外,任务被分配到x列表的中间部分,有人能告诉我为什么吗?
您确实更改了长度。您选择了从2到8(不包括8)的长度为6的切片,并将其替换为长度为2的列表([1] * 2
)。换句话说,你去掉了列表的中间部分,把一个较小的中间部分放回原处。