首页 > 解决方案 > Python 异常处理

问题描述

N=int(input("Find Prime Number:"))
ans = [2]
count=0
for i in range(3,N+1):
    for j in ans:
        if i % j ==0:
            break
    else:
        ans.append(i)
print(ans)

这是查找素数的代码。

我想知道当重复中没有“if”时“else”是如何工作的。

标签: pythonexceptionrepeat

解决方案


仅当循环未被 break 语句终止时,才执行 for/while 之后的 else 块。

    for i in range(3,N+1):
      for j in ans:
        if i % j ==0:
            break
    else:
        ans.append(i)

只有在循环完成后,它才会在 else 部分开始。

参考 :


推荐阅读