当我出于某种原因运行以下代码时,它表示该中断不正确,但是如果删除该中断则可以使用。

谁能帮助我了解原因?

composites = []
for i in range(101):
    for j in range(i):
        if (i % j) == 0:
            composites.append(i)
            break
print("Composites: ", *composites)

最佳答案

提供的示例代码引发了ZeroDivisionError而不是中断错误。第二个范围存在问题,因为模函数不能用0完成。

由于复合材料不是素数,因此应该从2开始进行因子检查。将第二个范围函数更改为range(2, i)应该可以解决此问题。

composites = []
for i in range(101):
    for j in range(2, i):
        if (i % j) == 0:
            composites.append(i)
            break
print("Composites: ", *composites)

关于python - 用列表和括号打印偶数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53254427/

10-08 22:48