在Python中破坏if语句

时间:2020-11-02 11:46:06

标签: python if-statement

我想破坏if语句。

我的代码是这样的:

if a == 0 or d == 0:
    while a>0:
        d=a//b
        c+=1
        a=d//b
        c+=1
    break

我遇到一个名为'break' outside loop的错误,我该怎么办。

2 个答案:

答案 0 :(得分:1)

您不能“破坏” if语句。您可以“打破” while循环。您可以在while循环中添加“ if”语句以使其中断

答案 1 :(得分:0)

您的问题表明您某处的设计不好,但这是“打破if语句”的一种合理的方式(不好,更多的是“最差”):

class IfBreaker(Exception):
    pass

a=1
b=2 # Change to see the difference

try:
    if(a==1):
        if(b==1):
            raise IfBreaker
        print("Will not be printed if b==1")
except IfBreaker:
    pass

但是通常,您会跳出循环。不是if语句。如果您发现需要这样做,很可能您做了非常错误的事情。如果中断是因为您要为其引发异常的某种错误,则上述方法是好的。

相关问题