在python中实现根据经纬度确定所在城市
时间: 2023-06-26 12:04:15 浏览: 221
可以使用第三方库geopy来实现:
首先安装geopy库,可以使用以下命令:
```
pip install geopy
```
然后,使用geopy中的Nominatim类来实现根据经纬度确定所在城市。下面是一个示例代码:
```python
from geopy.geocoders import Nominatim
def get_city(lat, lon):
geolocator = Nominatim(user_agent="my-app")
location = geolocator.reverse(f"{lat}, {lon}")
address = location.raw['address']
city = address.get('city', '')
if city == '':
city = address.get('town', '')
return city
```
该函数接收两个参数,分别是纬度和经度。然后使用Nominatim类的reverse方法来获取该经纬度所在的位置信息,然后从中提取城市信息并返回。注意,有些位置信息中可能没有city字段,这时可以考虑使用town字段。
示例用法:
```python
city = get_city(39.9042, 116.4074)
print(city) # 北京市
```
阅读全文