Python:定义一个圆并检查一个点是否位于其中的最简单方法是什么

时间:2016-01-14 17:11:50

标签: python math geometry pi

我想定义一个设定半径的圆,要求用户输入x和y坐标,然后检查该点是否位于圆内。

这就是我现在正在使用的(距离公式)。

r = 1024
xc = r
yc = 6

def distance(x,y):
    return ((x - xc)^2 + (y - yc)^2)^1/2

def check(x,y):
    if distance(x,y) > r:
        return 1;
    else:
        return 0;

有更有效的方法吗?

2 个答案:

答案 0 :(得分:1)

我认为这也应该有效:

if (x-xc)**2+(y-yc)**2 < r**2:
   return 1
else:
   return 0

但它不是比你的代码更有效,稍微提高

答案 1 :(得分:0)

您可以将if .. else删除为:

,从而简化您的检查
def check(x,y):
    return ((x - xc)**2 + (y - yc)**2) < r**2