Python计算两个经纬度坐标

你可以使用以下代码来计算两个经纬度坐标之间的距离:

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))
    distance = 6371 * c  # 地球半径(km)

    # 返回保留两位小数的距离结果
    return round(distance, 2)

# 示例使用
lat1 = 40.7128  # 纬度1
lon1 = -74.0060  # 经度1
lat2 = 34.0522  # 纬度2
lon2 = -118.2437  # 经度2

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

这个代码片段中使用的是Haversine公式来计算地球上两个经纬度坐标之间的距离。结果以千米(km)为单位,并保留两位小数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值