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


问题内容

我正在尝试列出质数。

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文件时,它将立即关闭。我认为代码有问题。


问题答案:

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

当测试每个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()