2014-09-11 17 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