Python 2.7 Python 2.7.3中的奇怪语法错误
我最近决定学习基本编程,并使用麻省理工学院的开放式课程学习Python。其中一个任务是创建一个程序,生成从0开始的第1000个素数。我的第一个解决方案如下:Python 2.7 Python 2.7.3中的奇怪语法错误,python-2.7,syntax-error,primes,Python 2.7,Syntax Error,Primes,我最近决定学习基本编程,并使用麻省理工学院的开放式课程学习Python。其中一个任务是创建一个程序,生成从0开始的第1000个素数。我的第一个解决方案如下: oddList = [] for odd in range(3, 10000): if odd % 2 != 0: oddList.append(odd) else: continue primeCount = 3 loopHolder = True while loopHolder == True: for poss
oddList = []
for odd in range(3, 10000):
if odd % 2 != 0:
oddList.append(odd)
else:
continue
primeCount = 3
loopHolder = True
while loopHolder == True:
for possiblePrime in oddList:
if primeCount == 1000:
print possiblePrime
loopHolder = False
from math import *
limit = int(math.sqrt(possiblePrime)
for primeTest in range(2, limit):
testCount = 0
if possiblePrime % primeTest == 0:
testCount = testCount + 1
primeCount = primeCount
else:
continue
if testCount > 0:
primeCount = primeCount
break
else:
primeCount = primeCount + 1
break
然而,当我运行它时,我在
“对于范围(2,limit)内的primeTest:”python特别突出显示冒号。我意识到这个错误可能是其他地方的语法错误造成的,但我找不到它。有人能指出我的错误在哪里吗
PS:虽然很感激,但不需要代码语义方面的帮助。您有“while loopHolder==True:”后面没有缩进块。您可能应该将其写为“while loopHolder:”,因为==True部分不是必需的。我也会避免在循环中进行导入。导入语句通常位于文件的顶部,除非您需要它位于其他位置。“limit=int(math.sqrt(possibleprome)”后面也没有右括号。对于python来说,空格非常非常重要。在编写代码并将其复制到stackoverflow时,您需要更加注意这一点。如果我要复制并粘贴代码,那么现在您的代码将无法像您编写的那样工作
对于您的问题,请看上面的两行,看看是否缺少一个右括号。空白不仅仅是缩进。它允许人们看到或感到困惑。它允许直观地分隔事物。虽然python主要强制缩进,但空白的重要性足以成为缩进的一部分。我认为在向python新手或编程新手传授空白的优点方面,log post比帮助他们更为不幸。