自学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的功能:如果输入的数不符合条件,则给出相应的提示。
实例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语句配套使用。