质数列表生成器在运行时立即关闭

时间:2018-12-14 21:53:06

标签: python primes

我正在尝试列出质数。

primes = []
num=int
for num in range (2,100):
    for x in range (2, num):
        if (num % x) == 0:
            pass
        else:
            primes.append(num)
            break
print(primes)
input()

,但是当我尝试打开.py文件时,它将立即关闭。我认为代码有问题。

2 个答案:

答案 0 :(得分:1)

您的代码执行并完成,但是由于其中包含错误,因此不会计算素数列表:

在测试每个num的质数时,可以测试所有可能的除数(尝试这样做),如果找到一个除数,则退出。如果在对所有因子进行测试后都未发现除数,则只需将您的数字添加到列表中即可

此外,不需要行num=int

primes = []

for num in range (2,100):
    is_prime=True
    for x in range (2, num):
        if (num % x) == 0:
            is_prime=False
            break
    if is_prime:
       primes.append(num)

print(primes)
input()

答案 1 :(得分:0)

if-else中的逻辑不正确。

如果在if块中得到“干净的模数”,您想做什么?提示:不是pass

第二,您什么时候要追加到主要清单上?

这里并不太具体,因为我们不应该为您执行此硬件分配。 :)