if语句后不打印

时间:2014-08-25 15:23:59

标签: python if-statement syntax

所以我刚开始学习使用Python,我收到了语法错误。

在我正在使用的书之后,这是一个简单的if语句,后面跟着一个print语句,无论if语句如何都会发生。

name = "Doug"
if name == 'Doug' :
    print "Hello, Doug!"
print "How are you today?"

预期输出为:

Hello Doug!
How are you today?

如果name != Doug,则输出应为

How are you today?

我用C ++和Java做了一千次简单的if,但是用括号。出于某种原因,最终打印返回时出现语法错误。

我使用的是Python 2.7.8,而不是Python 3,使用printprint()给出了相同的结果。

编辑:  解释器版本中没有任何Newlines工作,但是在.py文件中运行脚本可以完美地工作。出于某种原因,我的书没有提到这一点。

1 个答案:

答案 0 :(得分:1)

如果我把它放在.py文件中并通过解释器运行文件,那么你的代码对我有用。例如。 python hello.py。但是,如果我以交互方式运行python解释器,那么我可以在第二个print语句中重现语法错误。

我认为这只是交互模式的一个怪癖。通过在两个print语句之间添加一个额外的换行符,我也可以使它在交互模式下工作。对于它的价值,交互模式提示使我认为它不会识别if语句的结束,直到我在其后面输入额外的换行符(否则,if块中的另一个语句可能会跟着)。