Python解释器中的简单if语句

8

环境:

  • Fedora 27 (GNU/Linux)
  • 终端
  • python3.6.3

我在Python解释器中运行这些简单的代码时遇到了问题,这是一个只有if语句或独立if语句。

n = 5
if n == 4:
    print('n=4')
print('done')

enter image description here

这应该会打印出单词"done",但我做错了什么?

Pycharm 中的 Python 控制台运行完美。 - Manuel
尝试使用 print 'done',也许您正在较早版本上运行它。 - Ibo
不好意思,我知道版本是Python 3.6.3。 - christianbueno.1
1
括号是无关紧要的。在Python2中,print('done')等同于print ('done')print 'done' - t.m.adam
3
“...”是解释器给出的提示,表明它期望您处于一个缩进块中。在那种情况下输入非缩进语句会导致错误。 - John Gordon
1个回答

18
解释器在每个代码块后面留一行空白,以便让解释器知道你的代码块已经结束(或放置一个else等)。 在那里放置任何内容都会使其出错。只需将该行保持为空白,并等待下一个>>>出现在print('done')之前即可。
>>> n = 5
>>> if n == 4:
...    print('n=4')
...
>>> print('done')
done

好的,这很有道理。我的错误在于最后一个打印语句,实际上应该放在下一个“主提示符”(>>>)中。 - christianbueno.1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接