1

以下は私の現在のコードです。

import csv
def function():

    latitude = []
    longitude = []
    with open('data.csv', 'rU') as input: #
          dL= list(csv.reader(input))
          sL = [row[4] for row in dL[1:]]
          longitude.append(sL)
          sL1 = [row[3] for row in dL[1:]]
          latitude.append(sL1)

    print latitude
    print longitude

    print
    for i in range(0, len(latitude)):
        print "Co-ordinates (" + str(latitude[i]) + "," + str(longitude[i]) + ")"

function()

そうです、私の出力はこれを生成します

[['-20.71', '-20.73', '-20.88', '-20.78', '-20.76', '-20.68', '-20.95', '-21.06', '-21.05', '-20.9']]
[['116.77', '116.75', '116.67', '117.15', '117.16', '117.19', '117.37', '117.44', '116.26', '117.64']]

Co-ordinates (['-20.71', '-20.73', '-20.88', '-20.78', '-20.76', '-20.68', '-20.95', '-21.06', '-21.05', '-20.9'],['116.77', '116.75', '116.67', '117.15', '117.16', '117.19', '117.37', '117.44', '116.26', '117.64'])

これは、作成したいリストを示しています。

私がやりたいのは、このような出力を生成することです

Co-ordinates (-20.71,116.77)
Co-ordinates (-20.73, 116.75) 

すべての座標ペアについても同様です。

座標の出力を必要な出力に取得する方法はありますか?

4

3 に答える 3

2
  1. extendの代わりに使用しますappend
  2. zip(latitude, longitude)

考え直して、あなたはただできるlongitude = [row[4] for row in dL[1:]]. 何も拡張 (または追加、初期化) する必要はありません。

より良い:

with open('data.csv', 'rU') as infile:
      dl = list(csv.reader(infile))
lat_long = [tuple(row[3:5]) for row in dl[1:]]
for (lat, lng) in lat_long:
    print "Co-ordinates ({0}, {1})".format(lat, lng)
于 2013-06-03T08:26:40.963 に答える