为什么我在Python解释器中得到一个SyntaxError?

Mic*_*oka 2 python syntax-error

当我从.py文件中尝试此代码时,此代码有效,但在命令行解释器和空闲时失败.

>>> try:
...     fsock = open("/bla")
... except IOError:
...     print "Caught"
... print "continue"
  File "<stdin>", line 5
    print "continue"
        ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

我正在使用python 2.6

Pet*_*sen 5

使用Python 3,print是一个函数,而不是一个语句,因此print("continue")如果您使用的是Python 3,则需要围绕参数使用括号.

但是,插入符指向比Python 3更早的位置,所以你必须使用Python 2.x.在这种情况下,错误是因为您在交互式解释器中输入此错误,并且需要一些"帮助"来弄清楚您要告诉它的内容.在上一个块之后输入一个空行,以便它可以正确解密缩进,如下所示:

>>> try:
...     fsock = open("/bla")
... except IOError:
...     print "Caught"
...
(some output shows here)
>>> print "continue"
Run Code Online (Sandbox Code Playgroud)