2014-09-11 42 views
-2

例如列表的片段:分配Python中

x = [0] * 10 
x[2:8] = [1] * 2 

结果变成:

[0,0,1,1,0,0] 

这是为什么发生?我没有更改x的长度,但它自动更改为6.

此外,赋值分配给x列表的中间部分,有人可以告诉我为什么吗?

回答

3

你确实改变了长度。您从2到8(不包括8)中选择长度为6的片段,并将其替换为长度为2的列表([1] * 2)。换句话说,你把名单的中间切掉,把一个更小的中间放回去。

+0

非常感谢你,帮助很多! – 2014-09-11 03:59:07