计算机在解决某个具体问题时,主要是有三种情况,分别是书序执行所有的语句,选择执行部分语句和循环执行部分语句。

选择语句

在python中,选择语句主要有三种形式,分别是if语句,if……else语句,if……elif……else多分支语句

下面对这些语句进行讲解

最简单的if语句

Python中使用if关键字来组成选择语句,其最简单的语法形式如下:

if 表达式:

语句块

其中,表达式可以是一个单纯的布尔值或变量,也可以是比较表达式或逻辑表达式,如果表达式为真,则执行语句块的内容,否则不执行,跳过语句块,执行后面的内容

这种形式的if语句相当于汉语中的“如果……就……”

代码如下:

a = 10
b = 20
if a > b:
   print(a)   #书写格式,if后的语句块要保留空格
   print(b)   #这里a和b都不执行
print(a,b)    #当语句顶格书写时,不被if语句控制

if 0:
    print(a)

if True :    #条件也可以为布尔值
    print(a)

if……else语句

如果遇到只能二选一的条件,Python中提供了if……else语句解决类似的问题,其语法格式如下:
if   表达式:

          语句块 1

else :

         语句块2

 其表达式的内容跟单一一个if表达式内容是一样的,如果满足if内的表达式。则执行语句块1,否则执行语句块2

给个简单的例子——输出两个数中较大的那个值

a = 10
b = 20
max = 0
if a > b :
    print('最大的数是', a)
else :
    print('最大的数是', b)

 if……elif……else语句

这个语句可以给我们提供多种选择

其语法格式如下

if 表达式 1:

      语句块 1

elif 表达式 2:

      语句块 2:

elif  表达式 3:

      语句块 3

……

else :

      语句块 n

 上面的表达式内容也是跟上面if语句表达式内容一样的

 给个简单的例子——输出三个数中最大的那个

a = 10
b = 20
c = 5
max = 0
if a > b > c :
    print('最大的数是', a)
elif  b > a > c:
    print('最大的数是', b)
else :
    print('最大的数是',c)

if语句的嵌套

前面介绍了3中形式的if选择语句,这3种形式的选择语句之间都可以进行互相嵌套。

例如在最简单的if语句中嵌套if……else语句,语法格式如下:

if 表达式 1:

      if  表达式 2 : 
            语句块 1

     else :

            语句块 2

 在if……else语句中嵌套if……else语句,语法格式如下

if 表达式 1:

        if 表达式 2:

                 语句块 1

       else :

          语句块2

else :

     if 表达式 3 :
             语句块 3

    else 

       语句块3

 条件表达式

在程序开发时,经常会根据表达式的结果,有条件地进行赋值。例如,要返回两个数中较大的数,可以使用简化后的条件表达式;

代码如下:

a = 10
b = 20
r = a if a > b else b
print(r)

在使用条件表达式时,先计算中间的条件(a>b),如果结果为True,返回if语句左边的值,否则返回else右边的值。例如上面表达式的结果,即r的值为20