1

7 列と 10 行の 2 次元リストを作成し、列 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」のみの新しいリストを提供しますが、「Lat」と「Lon」も必要です。新しいリストは次のようになります...['3_10', '-21.77','119.11']['4_10','-21.10'...] newList.append(row[3,4 ,5])...もちろんそれはうまくいきませんが、どうすればよいかわかりません。

4

1 に答える 1

2

row[3]4番目の要素を指します。4 番目から 6 番目の要素が必要なようです。スライスします。

row[3:6]

リスト内包表記でこれをすべて行うこともできます。

newList = [row[3:6] for row in myList[1:]]
于 2013-05-18T00:00:55.837 に答える