2013-05-17 172 views
1

嘗試使用7列和10行的2d列表存在一些困難,並且追加僅來自第4,5和6列(或來自索引0的3,4,5)的所有行,到一個新的名單。原來的列表實際上是一個csv,並且更長,但是我只是將它的一部分放在函數中進行故障排除。 我有什麼到目前爲止...從一個列表追加特定行到另一個列表

def coords(): 
    # just an example of first couple lines... 
    bigList = [['File','FZone','Type','ID','Lat','Lon','Ref','RVec'] 
    ['20120505','Cons','mit','3_10','-21.77','119.11','mon_grs','14.3'] 

    newList=[] 
    for row in bigList[1:]: # skip the header 
     newList.append(row[3]) 
    return newList  # return newList to main so it can be sent to other functions 

此代碼給了我與「ID」僅但我也希望「緯度」和「經度」一個新的列表。 新列表應該看起來像... ['3_10','-21.77','119.11'] ['4_10',' - 21.10'...] 我嘗試了重寫newList.append(row [3 ,4,5])...當然這並不起作用,但不知道如何去做。

+0

請張貼實際的代碼。你在這裏發佈的內容只是引發了一個'SyntaxError'。 – abarnert

+0

你讀過教程嗎?關於[Lists](http://docs.python.org/3/tutorial/introduction.html#lists)一節解釋了這一點(儘管您可能必須先回顧關於字符串的部分)。 – abarnert

回答

2

row[3]是指第四個元素。你似乎想通過第六元素第四,所以切它:

row[3:6] 

你也可以做這一切與列表理解:

newList = [row[3:6] for row in myList[1:]] 
相關問題