if…else语句

发布于:2024-05-21 ⋅ 阅读:(130) ⋅ 点赞:(0)

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm=1001.2014.3001.5501

如果遇到只能二选一的条件,例如,某大学毕业生到知名企业实习期满后留用,现在需要选择Python开发的方向,示意图如图6所示。

图6  选择Python开发的方向

Python中提供了if…else语句解决类似问题,其语法格式如下:

if 表达式:

    语句块1

else:

    语句块2

使用if…else语句时,表达式可以是一个单纯的布尔值或变量,也可以是比较表达式或逻辑表达式,如果满足条件,则执行if后面的语句块,否则,执行else后面的语句块,这种形式的选择语句相当于汉语里的关联词语“如果……否则……”,其流程图如图7所示。

图7  if…else语句流程图

技巧: if…else语句可以使用条件表达式进行简化,如下面的代码:

a = -9

if a > 0:

    b = a

else:

    b = -a

print(b)

可以简写成:

a = -9

b = a if a>0 else -a

print(b)

上段代码主要实现求绝对值的功能,如果a > 0,就把a的值赋值给变量b,否则将-a赋值给变量b。使用条件表达式的好处是可以使代码简洁,并且有一个返回值。

下面增加实例01的功能:如果输入的数不符合条件,则给出相应的提示。

图标 (35)

  实例02  验证瑛姑给出的答案是否正确

使用if…else语句判断输入的数字是不是黄蓉所说的除以三余二,除以五余三,除以七余二的数,并给予相应的提示,代码如下:

print("今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?\n")

number = int(input("请输入瑛姑给出的数:"))              # 输入一个数

if number%3 ==2 and number%5 ==3 and number%7 ==2:    # 判断是否符合条件

    print(number,"符合条件")

else:                                               # 不符合条件

    print(number,"不符合条件")

运行程序,当输入23时,效果如图8所示;当输入21时,效果如图9所示。

图8  输入的是符合条件的数

图9  输入的是不符合条件的数

注意:在使用else语句时,else一定不可以单独使用,它必须和保留字if一起使用,例如,下面的代码是错误的:

else:

    print(number,"不符合条件")

程序中使用if…else语句时,如果出现if语句多于else语句的情况,那么该else语句将会根据缩进确定该else语句属于哪个if语句。如下面的代码:

a = -1

if a >= 0:

    if a > 0:

        print("a大于0")

    else:

        print("a等于0")

上面的语句将不输出任何提示信息,这是因为else语句属于第3行的if语句,所以当a小于0时,else语句将不执行。而如果将上面的代码修改为以下内容:

a = -1

if a >= 0:

    if a > 0:

        print("a大于0")

else:

    print("a小于0")

将输出提示信息“a小于0”。此时,else语句和第2行的if语句配套使用。


网站公告

今日签到

点亮在社区的每一天
去签到