如果…else语句,则非常简单的Python上的语法无效


问题内容

有人可以解释为什么我在编写这个简单的if …
else语句时从Python的解释器中收到无效的语法错误吗?我自己没有添加任何标签,我只是键入文本,然后在键入后按Enter。当我在“
else:”之后键入回车时,出现错误。解释器突出显示“其他”。怎么了?

Python 3.3.0 (v3.3.0:bd8afb90ebf2, Sep 29 2012, 10:55:48)
[MSC v.1600 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.

>>> if 3 > 0:
        print("3 greater than 0")
        else:

SyntaxError: invalid syntax
>>>

问题答案:

与许多其他语言不同,Python不允许空块(因为它不使用花括号来表示块)。pass任何时候要使用一个空块(包括在if /
else语句和方法中),都必须使用该关键字。

例如,

if 3 > 0:
    print('3 greater then 0')
else:
    pass

或空方法:

def doNothing():
    pass