a = {n for n in range(1,100) if n%3==0} for处报错

在redhat-linux 6.3 (python版本2.6.6)版本中,a = {n for n in range(1,100) if n%3==0} 执行会出现SyntaxError: invalid syntax报错,但是在windos下 Python 2.7.8就不会出现错误。这是版本的不同?还是格式写错了?

请输入图片描述

如果该再list中,这种方式,linux中和windos都可以实现,

请输入图片描述

回答:

https://docs.python.org/dev/whatsnew/2.7.html

Python3的set comprehension(就是{x for x in xxx})被backported到了Python2.7里。也就是说2.6是没有set comprehension的.

回答:

一个是{}是字典,一个是[]是列表.....

以上是 a = {n for n in range(1,100) if n%3==0} for处报错 的全部内容, 来源链接: utcz.com/a/159810.html

回到顶部