Python代码有效,但eclipse显示错误 - 检测元组时出现语法错误

时间:2014-03-18 19:24:24

标签: python eclipse python-3.x

我是python的新手。我在Eclipse Kepler中使用Python 3.3。

这是我的代码段:

f = Fibonacci(0,1)
for r in f.series():
    if r > 100: break
    print(r, end=' ')

print(r, end = '')行,eclipse会报告一种语法 错误 - Syntax error while detecting tuple。然而 程序运行完美。

为什么会发生这种情况?如何修复错误?

5 个答案:

答案 0 :(得分:22)

您需要在Eclipse中指定正确的Grammar Version。见这里:print function in Python3

您的设置中是Grammar Version 3.3吗?步骤 - 项目>属性> Python Interpreter / Grammar。您可能必须重新启动Eclipse以查看更改。

答案 1 :(得分:3)

我知道这是一篇老帖子,但是对于那些在2018年及以后遇到过类似问题的人来说,CodeMix for Eclipse是一个插件,你可以安装它来提升你的python开发,几乎不需要任何配置。您可以获得内容辅助,验证,从重构到格式化等内容的快捷命令。更多信息here

答案 2 :(得分:1)

在python 2.x中print是一个内置关键字,不是python 3.x中的函数,使用如下:

>>> print "hello", "world"
hello world

因此,Python假定(r, end= '')是一个包含两个值的元组,您正在尝试打印。

您可以将eclipse配置为使用python 3.x语法。如果您使用的是PyDev,请检查this

答案 3 :(得分:0)

我认为您实际上可能正在使用Python 2.执行此操作并报告您的结果:

import sys
print(sys.version)

编辑:

实际上,您报告的内容似乎是关于Eclipse的pydev的一个漏洞:

http://sourceforge.net/p/pydev/bugs/913/

答案 4 :(得分:0)

将eclipse中的运行路径更改为python 3.x而不是当前设置,可能设置为python 2.x