如何创建具有容差

时间:2018-05-17 09:07:40

标签: python

我正在尝试进行一些控制工程,我从一开始就使用某个值,例如x = 5,最后它应该返回x。最终目标是找到x的值,其中x (beginning) == x (end)

我正在考虑创建一个while循环,只需在x(beginning)上添加或减去某个步长直到达到平衡。但是,我想在while循环中使用一些容差。像x(beginning) ==x(end)+0.1一样也可以。

我不知道如何在Python中创建它,我不确定这是否是实现此目的的正确方法

2 个答案:

答案 0 :(得分:1)

你可以这样做:

# in this example, x is the beginning value, y is the end value
x = 5
y = 10
tolerance = 0.1
while True:
    if abs(y-x) <= tolerance:
        break
    # put your code here
    x += 1 # or something else

答案 1 :(得分:1)

我认为你要找的是math.isclose()。通过它,您可以指定相对和绝对容差限制。

isclose(a, b, rel_tol=1e-9, abs_tol=0.0)