已知两点的经纬度,如何求距离
时间: 2023-09-12 22:09:52 浏览: 267
已知两点经纬度,计算距离
两点间距离的计算可以通过地球表面上的经纬度来进行计算。可以使用Haversine公式来计算,在这个公式中,距离是地球表面的一个球体,其直径认为是12742公里。以下是代码示例:
```
import math
def distance(lat1, lon1, lat2, lon2):
# 将经纬度转换成弧度
lon1 = math.radians(float(lon1))
lon2 = math.radians(float(lon2))
lat1 = math.radians(float(lat1))
lat2 = math.radians(float(lat2))
# Haversine 公式
dlon = lon2 - lon1
dlat = lat2 - lat1
a = math.sin(dlat / 2)**2 + math.cos(lat1) * math.cos(lat2) * math.sin(dlon / 2)**2
c = 2 * math.asin(math.sqrt(a))
km = 6371 * c
# 返回公里数并保留两位小数
return round(km, 2)
```
其中,lat1和lon1是第一个点的纬度和经度,lat2和lon2是第二个点的纬度和经度。返回距离,单位为公里,保留两位小数。
阅读全文