我正在尝试列出质数。
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文件时,它将立即关闭。我认为代码有问题。
答案 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
。
第二,您什么时候要追加到主要清单上?
这里并不太具体,因为我们不应该为您执行此硬件分配。 :)