2015-05-09 95 views
1

我有一個列表a = [[1, 6, 5, 9], [], [], [4, -3]]轉讓列表(蟒蛇)每秒項目

我想移動每秒項目(6,9和-3)從非空列表進入一個新的。新列表應該如下所示b = [[6, 9], [], [], [-3]]我移動的項目應該從第一個列表中刪除。到目前爲止,我有這個,但我不知道如何把它們很好地去除:

for i in range(len(a)): 
    if a[i]: 
     b[i] = a[i][1::2] 

有沒有辦法做到這一點很好(也許列表理解)?我用python3

回答

4

是的,這是可能的,直截了當:

b = [c[1::2] for c in a] 

而不是刪除的項目,創建與另一半的新列表:

a = [c[::2] for c in a] 
+0

完美謝謝 – 8324