2013-04-20 48 views
1

所以我有以下代码:获得“无效语法”,从以前的工作代码

f = open('input.txt', 'r') 

text = f.read() 

data = text.split() 
print data 


print '<HTML>\n <HEAD>\n </HEAD>\n <BODY>\n  <table border="1">\n' 
for x in data: 
    print '   <tr>' + x + '<tr>' 
print'</table>\n </BODY>\n</HTML>' 

之前我试图安装IPython的,它与默认的Python壳工作。 但是在我安装了发行版和pyreadline,然后安装了iPhython后,代码不会停止给我语法错误,就好像不是一个单独的变量会起作用,不知道是否有关于python初始化/声明的内容,在控制台上做东西出错了,但它肯定会让我发疯,我需要修复它。

P.S.我使用的Windows 8

编辑: 被问到我得到的错误,这里有截图,因为我没有得到任何非常具体的文本类错误。

enter image description here 在这第二个,我编辑了几次代码来测试不同的东西,因此为什么我得到不同的变量的错误。 即使是最简单的事情也会给我一个错误。 P.S.2。我只是尝试print 'hey',它给了我同样的错误,不承认'令牌。

enter image description here

+1

如果包含确切的错误消息,会有所帮助。 – Aya 2013-04-20 17:14:53

+0

@Aya谢谢你的建议。刚刚做到了。 – Yokhen 2013-04-20 17:21:12

回答

1

看起来不管你是使用Python 3.x的安装等,你的代码为Python 2.x的写

在Python 3.x中,print现在是一个函数,而不是一个关键字,所以你必须改变像所有的线......

print data 

...到...

print(data) 

如果您需要保留的Python 2.x的兼容性,添加行...

from __future__ import print_function 

...在代码的顶部。

+1

非常感谢,它是固定的。由于项目限制,我无法导入,但我会坚持使用python 3.3的新语法。 – Yokhen 2013-04-20 17:30:08