我是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來格式化代碼 –
我已經嘗試修復您的帖子,請確認其含義是否正確。 –