Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/304.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语法错误_Python_Syntax_Operators_New Operator - Fatal编程技术网

Python语法错误

Python语法错误,python,syntax,operators,new-operator,Python,Syntax,Operators,New Operator,当我在python中运行这段代码时,它给了我一个语法错误,并在我指出的行中突出显示了l。为什么要这样做 from Euler import primeSieve,sumDig def powerSieve(n): powers = [] primes = primeSieve(100) for i in primes: j = 2 while i ** j <= n: for k in primes:

当我在python中运行这段代码时,它给了我一个语法错误,并在我指出的行中突出显示了l。为什么要这样做

from Euler import primeSieve,sumDig

def powerSieve(n):
    powers = []
    primes = primeSieve(100)
    for i in primes:
        j = 2
        while i ** j <= n:
            for k in primes:
                if i == k and i ** j >= 10: powers.append(i ** j)
                else:
                    l = 1
                    while l * (i ** j) <= n:
                        if l * (i ** j) >= 10: powers.append(l * (i ** j)
##THIS LINE             l *= k
            j += 1
    return sorted(set(powers))

from time import clock
start = clock()

print "Answer to PE119 = ",powerSieve(100)

elapsed = clock() - start
print elapsed * 1000,"ms"

您之前的线路缺少一个紧括号。更改此项:

if l * (i ** j) >= 10: powers.append(l * (i ** j)
为此:

if l * (i ** j) >= 10: powers.append(l * (i ** j))

您忘记关闭前一行的括号。应该是:

powers.append(l * (i ** j))

在该行上方有一个if语句,因此上面的行应该以冒号结尾,突出显示的行应该缩进。

Ahhh,我明白了。很简单。非常感谢。下面的每个人也一样。不要发表感谢评论,等待15分钟,然后接受最好的答案!错,请再次查看if语句。在决定发布re:a语法错误之前,您应该花更多的时间处理代码。