在Python中,你可以使用`math`库来计算两点之间的欧几里得距离。以下是一个简单的函数,用于计算两点之间的距离(以公里为单位),你可以根据需要将其转换为米:
import math
def get_distance(longitude1, latitude1, longitude2, latitude2):
将维度和经度从度数转换为弧度
lat1 = math.radians(latitude1)
lat2 = math.radians(latitude2)
lng1 = math.radians(longitude1)
lng2 = math.radians(longitude2)
地球半径(单位:公里)
R = 6371
使用Haversine公式计算两点间的距离
d_lat = lat2 - lat1
d_lng = lng2 - lng1
a = math.sin(d_lat / 2)2 + math.cos(lat1) * math.cos(lat2) * math.sin(d_lng / 2)2
c = 2 * math.atan2(math.sqrt(a), math.sqrt(1 - a))
distance_km = R * c
return distance_km
示例:计算沈阳中街到东中街的距离(单位:米)
print(get_distance(123., 41., 123., 41.80933))
如果你需要从键盘输入两个点的坐标并计算它们之间的距离,你可以使用以下代码:
import numpy as np
def calculate_distance(x1, y1, x2, y2):
计算两点之间的欧几里得距离
distance = np.sqrt((x2 - x1)2 + (y2 - y1)2)
return distance
从键盘输入坐标
x1 = float(input("请输入第一个点的x坐标:"))
y1 = float(input("请输入第一个点的y坐标:"))
x2 = float(input("请输入第二个点的x坐标:"))
y2 = float(input("请输入第二个点的y坐标:"))
计算并打印距离
print("两点间的距离为:", calculate_distance(x1, y1, x2, y2))
请注意,上述代码示例中的距离计算使用的是欧几里得距离公式。如果你需要计算其他类型的距离(如曼哈顿距离),你可以使用`scipy`库中的`pdist`函数,或者根据具体情况自定义计算公式。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/124245.html