我是Python新手,最近才完成Java编程。我用Python写一个基本的程序打印出第1000个素数,而我没有得到它的工作,由于某种原因,它也打印出下一个7号,除非我用不必要的突破:在Python中打印错误?
import math
n=2
location =0
while location < 999 :
if location == 998 :
print n
n=n+1
srn = math.sqrt(n)
srn = int(srn)
while srn > 1 :
if n % srn == 0 :
break
elif srn==2 and n%srn != 0 :
location = location+1
srn = srn-1
打印
7919
7920
7921
7922
7923
7924
7925
7926
但
while location < 999 :
if location == 998 :
print n
break
n=n+1
srn = math.sqrt(n)
srn = int(srn)
while srn > 1 :
if n % srn == 0 :
break
elif srn==2 and n%srn != 0 :
location = location+1
srn = srn-1
打印
7919
谁能告诉我为什么会发生这种情况?另外,当我试图解决这个问题时,我发现shell只打印一次,然后如果我复制了代码,不管是否修改,都不会打印任何内容。每次我想改变代码时,我都需要重新启动shell。
减少,而条件你能尝试格式化这一点更漂亮?堆栈溢出将让您通过突出显示并按下Ctrl + K来格式化代码 –
我已经尝试修复您的帖子,请确认其含义是否正确。 –