Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果。。python中的else_Python_Syntax - Fatal编程技术网

如果。。python中的else

如果。。python中的else,python,syntax,Python,Syntax,我用Python编写了一个程序来生成素数 这是节目单 def genPrimes(n): primes = [2] # primes generated so far last = 3 # last number tried while last <= n: for p in primes: if last % p == 0 and math.sqrt(p) <= last:

我用Python编写了一个程序来生成素数 这是节目单

def genPrimes(n):
    primes = [2]  # primes generated so far
    last = 3  # last number tried
    while last <= n:        
        for p in primes:
            if last % p == 0 and math.sqrt(p) <= last:
                break
        else:
            primes.append(last)
        last += 2
    return primes
def genPrimes(n):
素数=[2]#到目前为止生成的素数
最后一次=3#最后一次尝试

最后一个时,
else
实际上附加到
for
循环,如果程序没有脱离循环,则执行该循环。在您的例子中,如果没有一个素数被划分为该数字,那么它将执行,因此该数字是素数并被附加到列表中


另请参见。

它没有被错误地放置,python假定您正在为else
循环使用

从:

当与循环一起使用时,else子句与 try语句的else子句,而不是if语句的else子句:a try语句的else子句在没有异常发生时运行,并且 循环的else子句在未发生中断时运行


再次感谢。我不知道,直到这一点,我可以使用for循环的其他代码。代码显然没有正确缩进(阅读:完全没有缩进)。我试图修复它,因此它不再只是在您尝试加载文件或粘贴文本时引发异常,而是因为实际问题很可能与不正确的缩进有关,OP确实需要检查我是否正确。