Python 而不是';中断';

Python 而不是';中断';,python,break,Python,Break,我试图用布尔值代替“break”,但我没能做到这一点。有没有一种方法可以在不中断的情况下编辑此代码 素数: lower = int(input("Enter the lower bound: ")) upper = int(input("Enter the upper bound: ")) for num in range(lower,upper+1): if num>1 : for i in range(2,num):

我试图用布尔值代替“break”,但我没能做到这一点。有没有一种方法可以在不中断的情况下编辑此代码

素数:

lower = int(input("Enter the lower bound: "))
upper = int(input("Enter the upper bound: "))

for num in range(lower,upper+1):
    if num>1 :
        for i in range(2,num):
            if(num%i) == 0:
                break
        else:
             print(num, end =", ")

您可以将
break
替换为
pass
。我认为这将满足您的需要。

您希望摆脱
中断
并保留在
num%I==0时退出内部循环的相同行为。这是一种方法,使用布尔标志并用
while
替换
for
,这样我们就可以为迭代添加一个额外的条件:

for num in range(max(2, lower), upper + 1):
    i = 2
    prime = True
    while i < num and prime:
        if num % i == 0:
            prime = False
        i += 1
    if prime:
        print(num, end=", ")
适用于范围内的数值(最大值(2,更低),上限+1):
i=2
素数=真
当i
这根本不是OP所要求的……而且
pass
什么都不做,它肯定不会让你
打破当前的循环。