可以使用haversine公式来计算两个经纬度点之间的距离。以下是一个示例代码:

from math import radians, sin, cos, sqrt, atan2

def calculate_distance(lat1, lon1, lat2, lon2):
    # 将经纬度转换为弧度
    lat1 = radians(lat1)
    lon1 = radians(lon1)
    lat2 = radians(lat2)
    lon2 = radians(lon2)

    # haversine公式
    dlon = lon2 - lon1
    dlat = lat2 - lat1
    a = sin(dlat / 2) ** 2 + cos(lat1) * cos(lat2) * sin(dlon / 2) ** 2
    c = 2 * atan2(sqrt(a), sqrt(1 - a))

    # 地球平均半径(单位:千米)
    radius = 6371

    # 计算距离
    distance = radius * c
    return distance

# 示例使用
lat1 = 40.7128
lon1 = -74.0060
lat2 = 34.0522
lon2 = -118.2437

distance = calculate_distance(lat1, lon1, lat2, lon2)
print(f"两个点之间的距离为:{distance} 千米")

请注意,这个计算是基于地球是一个完美的球体进行的近似计算,实际上地球是一个略微扁平的椭球体。因此,这个计算结果只是一个近似值,但对于一般的应用来说已经足够了

python 计算两经纬度点的距离

原文地址: http://www.cveoy.top/t/topic/hOkA 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录