要计算两点之间的距离,可以使用haversine公式。下面是一个计算两个经纬度之间距离的示例代码:
python复制插入
from math import radians, sin, cos, sqrt, asin def haversine(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 * asin(sqrt(a)) r = 6371 # 地球平均半径(单位:公里) distance = c * r return round(distance, 2) # 示例使用 lat1 = float(input("输入第一个点的纬度:")) lon1 = float(input("输入第一个点的经度:")) lat2 = float(input("输入第二个点的纬度:")) lon2 = float(input("输入第二个点的经度:")) distance = haversine(lat1, lon1, lat2, lon2) print("两点之间的距离为:", distance, "公里")
复制插入
在这个示例中,我们定义了一个名为haversine的函数,它接受四个参数:两个点的纬度和经度。函数内部使用haversine公式计算两点之间的距离,并返回结果。我们还使用input函数询问用户输入两个点的经纬度,并将其传递给haversine函数进行计算。最后,我们将结果打印出来,并保留两位小数。