Как получить вывод в таблицу с заголовком? - PullRequest
0 голосов
/ 09 июня 2018

Это мой результат Матрицы расстояний API Карт Google:

{
'destination_addresses': 3 locations
'origin_addresses': one static location
'rows': [{
    'elements': [{
        'distance': {'text': '0.5 km', 'value': 532}, 
        'duration': {'text': '8 mins', 'value': 452}, 
        'status': 'OK'}, {

        'distance': {'text': '0.7 km', 'value': 682}, 
        'duration': {'text': '9 mins', 'value': 561}, 
        'status': 'OK'}, {

        'distance': {'text': '0.6 km', 'value': 646}, 
        'duration': {'text': '9 mins', 'value': 539}, 
        'status': 'OK'
        }]
       }], 
 'status': 'OK'
}

Я написал это для извлечения 'значения' для каждого элемента расстояния и длительности.

matrixDistance = gmaps.distance_matrix(origin, destinations, mode = "walking")
split = matrixDistance['rows'][0]['elements']
for a in split:
    distance = a['distance']['value']
    duration = a['duration']['value']
print(distance, duration)

Вопрос в том, какраспечатать вывод в таблице и с таким заголовком (я могу извлечь результат и немного не знаю, как получить часть заголовка):

Distance    Duration
     532         452
     682         561
     646         539

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

for a in matrixDistance:
    distance = a['rows'][0]['elements'][0]['distance']['value']
    duration = a['rows'][0]['elements'][0]['duration']['value']

    print(distance, duration)
TypeError: string indices must be integers

Было бы неплохо, если бы я мог немного очистить код, но сейчас разделенная часть хороша, но я не могу получить результат втаблица с заголовком.Кто-нибудь может мне помочь в этом?Спасибо!

*** Я также не знаю почему, но мой модуль csv отсутствует.Не удается импортировать модуль.

1 Ответ

0 голосов
/ 09 июня 2018

Вот мой подход к этой проблеме.Вы можете найти много подходов через разные библиотеки.

matrixDistance = gmaps.distance_matrix(origin, destinations, mode = "walking")
split = matrixDistance['rows'][0]['elements']
print("Distance \t Duration")

for a in split:
    distance = a['distance']['value']
    duration = a['duration']['value']
    print("{} \t\t {}".format(distance ,duration))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...