我列出了经度和纬度。
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]
我想将此列表转换为一个变量,然后我可以将其传递给我的API调用,该调用需要采用以下格式:
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, '|')]
哪个接近,但我仍然需要在每个长/纬线对周围添加引号并删除分隔每个项目的逗号。我也觉得有更好的方法来做到这一点。
答案 0 :(得分: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'
答案 1 :(得分:0)
我明白了 - 谢谢大家的帮助。
这就是我正在寻找的功能(当传递到拉特和长篇名单时)
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