Python布尔错误?

时间:2013-04-14 21:02:07

标签: python

好的,我正在创建一个循环:

def equ(par1,par2):
    con1=4/par1

    ready=False
    add=False

    if ready==True:
        if add==True:
            par2+=con1
            add=False
            print("true")
        elif add==False:
            par2-=con1
            add=True
            print("False")
    elif ready==False:
        par2=con1
    ready=True
    input()
    return par2

每次我运行程序时,它都没有按照预期执行。我注意到它不会改变准备好。有人可以给我一些帮助吗?谢谢! :)

1 个答案:

答案 0 :(得分:1)

首先,您没有循环结构。你只有一个线性的逻辑流。

其次,ready==True将永远不会成为现实,因为在该代码块被命中之前它被显式设置为False

如果您打算重用布尔值ready,那么您要么将其状态保留在方法范围之外的某个位置 - 一旦离开该方法,它就会立即返回并且再次将其设置为False