SyntaxError:语法无效

som*_*rti 1 python python-2.6

我使用的是Python 2.6.6并且是一个新手.我正进入(状态

  File "./factorizer.py", line 35
    return {n: factorize_naive(n) for n in nums}
                                    ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

在返回的for语句中.它应该返回一个字典,每个元素都有数字作为键,素数因子列表作为值.我哪里错了?

Ter*_*ryA 6

字典理解仅适用于Python 2.7及更高版本.你需要使用另一种方法,最好使用dict():

dict((i, factorize_naive(i)) for i in nums)
Run Code Online (Sandbox Code Playgroud)