Перебирать список координат и увеличивать позицию в списке координат на единицу для выполнения запросов

Я пытаюсь перебрать список координат для создания маршрутов, я не могу использовать их все сразу, так как мне нужны определенные значения, генерируемые отдельно.

Итак, мой список координат определяется как «координаты» и выглядит так:

      [[14.21055347, 47.5674345], [16.39356558, 48.17711001], [14.21055347, 47.5674345], [16.29236955, 48.15006768], [16.32467573, 48.13840484], [16.147533399999997, 48.3067388], [14.502926, 48.19992600000001], [14.21055347, 47.5674345], [16.30826472, 48.13786834], [15.92248574, 47.65823679], [14.21055347, 47.5674345], [16.40964033, 48.18617251], [16.393805666666665, 48.26835166666667], [16.393009142857142, 48.26821028571428], [15.92248574, 47.65823679], [14.21055347, 47.5674345], [16.40964033, 48.18617251], [16.19483273, 47.75397909], [14.21055347, 47.5674345], [13.717176157894738, 48.01453281578947]]

код для вызова данных маршрута:

      body = {"coordinates":coords,"attributes":["percentage"],"extra_info":["waycategory"]}

headers = {
    'Accept': 'application/json, application/geo+json, application/gpx+xml, img/png; charset=utf-8',
    'Content-Type': 'application/geo+json; charset=utf-8'
}
call = requests.post('http://127.0.0.1:8080/ors/v2/directions/driving-hgv/geojson', json=body, headers=headers)

weiter = call.text

data = json.loads(weiter)

Приведенный выше код возьмет весь список координат и маршрутов запроса и сгенерирует данные. На самом деле мне нужно сгенерировать маршруты и распечатать данные для каждой пары координат (coords[x,x+1]. Поэтому я бы сгенерировал запросы для:

      [[14.21055347, 47.5674345], [16.39356558, 48.17711001]], [[16.39356558, 48.17711001], [14.21055347, 47.5674345]], etc.

Итак, я предполагаю, что у вас будет цикл, который будет проходить по телу вот так:

      i = 0

while i < len(coords):
    
    body = {"coordinates":coords[int(i),int(i+1)],"attributes":["percentage"],"extra_info":["waycategory"]}

    headers = {
    'Accept': 'application/json, application/geo+json, application/gpx+xml, img/png; charset=utf-8',
    'Content-Type': 'application/geo+json; charset=utf-8'
    }
    call = requests.post('http://127.0.0.1:8080/ors/v2/directions/driving-hgv/geojson', json=body, headers=headers)

    weiter = call.text

    data = json.loads(weiter)

    print(data)

Этот и другие способы, которые я пробовал, не работают - если у вас есть предложение, как я могу действовать, я был бы очень благодарен!

0 ответов

Другие вопросы по тегам