首页 > 解决方案 > 使用 Google Api 并且我已经导入了 Json 和 Requests 以获得要显示的 int 类型的提升

问题描述

import json,requests 

def elevation(lat,lon):
    apikey="MY_KEY"
    url="https://maps.googleapis.com/maps/api/elevation/json"
    response=requests.get(url+"?locations="+str(lat)+str(lon)+"&key="+apikey)
    data=response.json()

    print(data["results"][0]["elevation"])

elevation(39.73915360,-104.98470340)

错误

Traceback (most recent call last):
  File "c:\------\elevation.py", line 13, in <module>
    elevation(39.73915360,-104.98470340)
  File "c:\------\elevation.py", line 10, in elevation
    print(data["results"][0]["elevation"])
IndexError: list index out of range

我想这是对的。数据是字典类型,所以我相信 data["results"][0]["elevation"] 是正确的。不知道它是如何超出范围的。我尝试了样本中的 2 个不同位置,它们都有这个错误。

这是那里网站上 google 海拔 api 的示例请求

标签: pythonjsonapipython-requests

解决方案


请一次打印“数据”和“响应”的值,并检查您是否得到正确的输出。我猜响应是空白的,所以你正面临这个问题,因为它无法从空数据中找到第 0 个索引。


推荐阅读