假设两个点坐标:
数学公式:
具体代码,以及以沈阳中街地铁口到东中街地铁口为例。
import math
def getDistance(longitude1,latitude1,longitude2,latitude2):
#维度
lat1 = (math.pi / 180) * latitude1
lat2 = (math.pi / 180) * latitude2
#经度
lng1 = (math.pi / 180) * longitude1
lng2 = (math.pi / 180) * longitude2
#地球半径
R = 6371
#两点间距离 km,如果想要米的话,结果*1000就可以了
d = math.acos(math.sin(lat1) * math.sin(lat2) + math.cos(lat1) * math.cos(lat2) * math.cos(lng2 - lng1)) * R
return d * 1000
if __name__ == '__main__':
#以沈阳中街到东中街的百度地图坐标拾取为例
print(getDistance(123.468114,41.807626,123.477634,41.80933))
#结果为811.4695045550735