我正在使用googlemaps
库来查询googlemapsapi。我想根据邮政编码提取一个城市的名称。在
例如,对于邮政编码23325
,我想提取Chesapeake
。在
这是我的初始代码:
import googlemaps
from keys import google_api_key
gmaps = googlemaps.Client(key=google_api_key)
geocode_result = gmaps.geocode('23325')
print(geocode_result)
以下是打印地理编码结果的结果:[{'address_components': [{'long_name': '23325', 'short_name': '23325', 'types': ['postal_code']}, {'long_name': 'Indian River', 'short_name': 'Indian River', 'types': ['neighborhood', 'political']}, {'long_name': 'Chesapeake', 'short_name': 'Chesapeake', 'types': ['locality', 'political']}, {'long_name': 'Virginia', 'short_name': 'VA', 'types': ['administrative_area_level_1', 'political']}, {'long_name': 'United States', 'short_name': 'US', 'types': ['country', 'political']}], 'formatted_address': 'Chesapeake, VA 23325, USA', 'geometry': {'bounds': {'northeast': {'lat': 36.8399469, 'lng': -76.21933109999999}, 'southwest': {'lat': 36.7870261, 'lng': -76.25747489999999}}, 'location': {'lat': 36.8179707, 'lng': -76.2305308}, 'location_type': 'APPROXIMATE', 'viewport': {'northeast': {'lat': 36.8399469, 'lng': -76.21933109999999}, 'southwest': {'lat': 36.7870261, 'lng': -76.25747489999999}}}, 'place_id': 'ChIJTcQMfRK9uokRcVFVU9zMizw', 'types': ['postal_code']}]
当我看类型时print(type(geocode_result))
Python告诉我<class 'list'>
如果我尝试类似geocode_result[1]
的操作,则会收到以下错误消息:
IndexError: list index out of range
如果我尝试geocode_result['address_components']
我会收到一条TypeError: list indices must be integers or slices, not str
消息
任何帮助将不胜感激!谢谢您!在
您有一个
dict
s的列表,因此可以使用list索引获取第一个项,然后使用键获得dict元素。在例如:
这是反向地理编码。这就可以做到:
相关问题 更多 >
编程相关推荐