三、python if...else语句

if...else语句即控制流程语句,属于复合语句,也就是说可以包含其他语句。

语法格式
python if语句形式和C和java类似,if后面跟着一 个或多个可选的elif ("else if"),以及一个最终可选的else块。测试和else部分都有一个相关的嵌套语句块,缩进列在首行下面。

//C风格代码
int a=1;
int b=2;
if(a

上面是典型的C风格代码,而python和C有一些不同。python中if语句必须以:冒号结束,也代表着嵌套语句的开始,紧跟其后的代码必须进行缩进。没有语句用Pass或...占位。()可选 ,if(a>b) 和if a>b表达的意思一样。";"终止语句符号可选,换行即终止。

    x=1
if x==1:
    x=2;
    print(x);
elif x==2:    #等同于C中 else if
    ...
else :
    pass

C风格语言中以{}对为代码块的容器,python嵌套代码块以缩进开始,缩进的结束就是代码块的结束。

所谓缩进,是指嵌套语句至左侧的所有空白。Python并不在乎怎么缩进(你可以使用空格或制表符)或者缩进多少(你可以使用任意多个空格或是制表符)。实际上,两个嵌套代码块的缩进可以完全不同。语法规则只不过是给定一个单独的嵌套块中所有语句都必须缩进相同的距离。如果不是这样就会出现语法错误,而程序就无法运行了,直到把缩进修改一致。

java和C都有一个可以节省大括号的方式,当下面只有一条代码时,可以省略大括号,

if(a)
    if (b)
        statementl;
else
    statement2;

这个else是属于哪个if的呢?这个else是属于嵌套的if (b),虽然看上去很像是属于外层if (a)的。其实处理个大括号不用这么暧昧,本来是可以完全省略掉的,而Python直接将它升级到语法层面,强迫我们遵守。

你可能感兴趣的:(三、python if...else语句)