2013-08-20 24 views

回答

4

不能直接......但它是非常容易使用的切片和連接在一起,做到這一點:

>>> a = list(range(100)) 
>>> a[:10] + a[-10:] 
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99] 

當然,如果有列表中的少於20個項目,你會得到一些重疊值:

>>> a = list(range(15)) 
>>> a[:10] + a[-10:] 
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14] 

...但你真正從字面上得到你所要求的:一開始就有10個項目,最後10個項目。如果你想要不同的東西,這是可行的,但你需要確切地定義你想要的。

+0

尼斯捕撈有關的重疊! –

+0

@ColonelPanic:爲了更好玩,可以用'a = list(range(3))'試試...... – abarnert

3

你可以用一個空的列表

>>> a = list(range(100)) 
>>> a[10:-10] = [] 
>>> a 
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99] 

這樣做,這樣更換中間的項目不給重疊,只是整個列表,如果沒有足夠的項目

>>> a = list(range(15)) 
>>> a[10:-10] = [] 
>>> a 
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14] 

即使工作在一個健全的方式爲@ abarnert的情況下

>>> a = list(range(3)) 
>>> a[10:-10] = [] 
>>> a 
[0, 1, 2] 
相關問題