Python Shell不让我创建else语句?

时间:2016-02-19 15:24:51

标签: python shell

每当我尝试创建else语句时,shell会自动在print语句下缩进,如果我输入else语句,则说明如下:

if marks<=40:
    print("failed")
else:

SyntaxError: invalid syntax
>>>  

所以我会尝试通过将其与前一个if语句内联来移动else,但它说明了

>>> if marks <=40:
        print ("failed")
    else:

SyntaxError: unindent does not match any outer indentation level
>>>  

问题的任何想法?提前致谢

如果重要的话,我也在Mac上使用v3.5.1。

1 个答案:

答案 0 :(得分:2)

pass分支添加else语句以跳过它:

if condition:
    do something
else:
    pass # Do nothing. 

else之后的冒号声明了缩进块的开始,如果找不到,则解释器会抱怨。这就是为什么在冒号后至少需要一个缩进语句的原因。

同样,else语句应与if语句处于相同的缩进级别。

典型的Python shell如下所示:

>>> if 1:
...   print 1
... else:
...   print 2
...
1
>>>