这是我的代码:
primes = [2, 3]
while len(primes) != 1001:
a = primes[-1] + 2
for i in primes:
if a % i == 0:
break
else:
print(primes)
primes.append(a)
print(primes[1002])
这应该创建一个直到第 1001 个素数的列表,然后打印第 1001 个数字。它首先取列表中的最后一个数字并加 2,然后检查给定的数字是否可以被素数列表的任何成员整除。如果它是可整除的,则 for 循环中断并跳过 else 子句。如果不是,则将该数字附加到素数列表中。重复该过程,直到列表的长度为 1001。循环结束后,打印最后一个数字。
但是,输出如下:
[2, 3]
[2, 3, 5]
_
并且在手动执行此操作之前,该程序不会终止。你能告诉我我做错了什么吗?