2017-01-08 3 views
0

私は経度と緯度のリストを持っています。APIコールの変数になるようにリストを操作する

私は、次の形式で指定する必要があり、私のAPI呼び出しへ渡すことができます変数にこのリストをオンにする
list_lat_long = [40.69113021716633, -74.17789320977796, 40.6443530054402, -74.34847470072029, 40.774062720524796, -73.67030582848912, 40.71410381905342, -73.95113368885083, 31.778799, 119.959693, 50.10810880074701, 14.267756265998923] 

params = {'Content-Type ': 'application/json', "api_key": REDACTED, "size": "500x500", "markers": "40.6911, -74.1779" "|" "40.6444, -74.3485"} 

目標:

markers = "40.6911, -74.1779" "|" "40.6444, -74.3485" 
params = {"markers": markers} 

しかし、私はこれを行う方法に固執している - 私は次の関数を書いた:

def clean_lat_long(list): 
    y = [] 
    for i in list: 
    y.append(round(i, 4)) 
    w = zip(y[::2], y[1::2]) 
    q = [] 
    for i in w: 
     q.append(i + (""+ "|",)) 
    return q 

これは私を与える:

[(40.6911, -74.1779, '|'), (40.6444, -74.3485, '|'), (40.7741, -73.6703, '|'), (40.7141, -73.9511, '|'), (31.7788, 119.9597, '|'), (50.1081, 14.2678, '|')] 

近いですが、私はまだ、各長い/緯度ペアの周りに引用符を追加し、各項目を分離するコンマを削除する必要があります。私はこれを行うもっと良い方法があるように感じる。

+1

は何ですか?あなたは何にそれを渡そうとしていますか? JSONでなければならない場合は、値の中の引用符をエスケープする必要があります。 – jonrsharpe

+0

申し訳ありませんが、私は投稿をより明確に編集しました。 – cgp25

+0

おそらくhttps://developers.google.com/maps/documentation/static-maps/intro#Markersを意味しますが、実際は正しい形式ではありません。 – jonrsharpe

答えて

0

あなたの探しているものは何ですか?

>>> '|'.join('{:.4f},{:.4f}'.format(lat, long_) for lat, long_ in zip(list_lat_long[::2], list_lat_long[1::2])) 
'40.6911,-74.1779|40.6444,-74.3485|40.7741,-73.6703|40.7141,-73.9511|31.7788,119.9597|50.1081,14.2678' 
0

皆さん、ありがとうございました。それは、地球上のフォーマット

これは(ラッツ& long型のリストを渡したときに)私が探している正確に何をした関数である

def input_api(l): 
f = [] 
for i in range(0, len(l)-1): 
    parameter = str(l[i][0]) + ' ' + str(l[i][1])+ '|' + str(l[i+1][0]) + ' ' + str(l[i+1][1]) 
    f.append(parameter) 
return f 
関連する問題