一公式
计算平面直角坐标系中两个点的距离,核心是基于欧几里得距离公式:、
对于点P1(x1, y1)和P2(x2, y2),距离d = √[(x2-x1)² + (y2-y1)²]
二代码化
#Point1 x, y坐标x1=100y1=200#Point2 x, y坐标x2=300y2=200distance=(pow(x2-x1,2)+pow(y2-y1,2))**0.5Pow还是用**
#使用**distance1=(((x2-x1)**2)+((y2-y1**2)))**0.5#使用powdistance2=pow(pow(x2-x1,2)+pow(y2-y1,2),0.5)print(distance1)print(distance2)
为什么出错,我明白了就是括号中来回增加,弄乱了
更正后的效果
#Point1 x, y坐标x1=100y1=200#Point2 x, y坐标x2=300y2=200distance1=((x2-x1)**2+(y2-y1)**2)**0.5distance2=pow((pow(x2-x1,2)+pow(y2-y1,2)),0.5)print(distance1)print(distance2)如何规避这个问题呢?
分别赋值
# 把两个算式分别变量赋值a=pow(x2-x1,2)b=pow(y2-y1,2)c=pow(a+b,0.5)print(f"点1 x:{x1}, y:{y1}, 点2 x:{x2}, y:{y2}")print(f"采用分别赋值的办法,最后结果为{c}")