Python基础-条件语句(if语句)

版权声明:转载请注明出处https://blog.csdn.net/TaoismHuang https://blog.csdn.net/TaoismHuang/article/details/91042983

在编程时,我们经常会遇到这样一个问题,当满足某一条件时,给出相对应的措施。在python中,我们可以使用if语句用来判断所给定的条件是否满足,根据判定的结果来执行相应的代码块。

if语句的使用这里会讲到单分支判断语句,双分支判断语句,多分支判断语句,if的嵌套使用以及if的三目运算。

单分支判断语句
if 判断条件:
	语句块

首先执行判断条件,当判断条件成立会执行语句块,若条件不成立,则不执行。

案例:网吧禁止未满18岁未成年人进入,输入用户年龄,如果小于18,则打印“未成年人禁止进入”

age = int(input("请输入您的年龄:"))
if age < 18:
    print("禁止进入!")

if语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示关系。

if判断语句还可以简写:

if x:
   print("True")

只要x是非零数值,非空字符串,非空list,就判断为True,否则为False

a = [1,2,3]
if a:
	print("True")
双分支判断语
if 判断条件:
	语句块1
else:
	语句块2

首先执行判断条件,当判断条件成立会执行语句块1,若条件不成立,则执行语句块2。

案例:如果年龄小于18,则打印“未成年人禁止进入”,否则打印“欢迎光临!”

age = int(input("请输入您的年龄:"))
if age >= 18:
    print("欢迎光临!")
else:
    print("禁止进入!")
多分支判断语句

案例:如果年龄小于等于18,打印少年,年龄大于18且小于等于25,则打印青年,大于25小于等于40,打印壮年,大于40,打印您更年期到了。

类似于上面我们需要多重判断的时候,我们则可以使用以下的方式来解决

if 判断条件1:
	语句块1
elif 判断条件2:
    语句块2
...
elif 判断条件n:
    语句块n
else:
    语句块

首先执行判断条件1,若条件1成立则执行语句块1,语句块1执行完毕则跳出分支语句;若条件1不成立,则执行判断条件2,若条件2成立,则执行语句块2;若条件2不成立,则继续往下执行直到判断条件成立为止,若判断条件都不成立,则执行else下面的语句块。

注意:elif是else if的缩写,可以有多个elif

案例的具体实现如下:

age = int(input("请输入您的年龄:"))
if age <= 18:
	print("少年")
elif age <= 25:
	print("青年")
elif age <= 40:
	print("壮年")
else:
	print("更年期到啦")

if语句有个特点,它是从上往下判断,如果在某个判断上是True,把该判断的语句对应执行后,就忽略掉其他的elif和else。

if的嵌套使用

案例:现输入一个数,判断他是否为大于10的偶数

如果要解决上述的需求,我们需要两个判断语句,第一个判断输入的数是否大于10,第二个判断是在第一个的基础上来判定这个数是否为偶数。

简单的说,就是在if语句中再嵌套一个if语句,效果如下:

if 判断条件1:
    if 判断条件2:
        语句块2-1
    else:
        语句块2-2
else:
    语句块1-2

执行过程:首先执行判断条件1,条件1成立,则执行判断条件2,若条件2成立,则执行语句块2-1,否则执行语句块2-2;条件1不成立则执行语句块1-2

注意:else与if的配套与缩进有关,if下面的的else是对齐的。

num =  int(input("请输入一个整数:"))
if num > 10:
	if num % 2 == 0:
		print("输入的数是一个大于10的偶数")

注意:从语法的角度上说,嵌套的层数没有限制,但是,从代码的可读性和可维护性来说,最好的嵌套的层数不要超过三层。

当然如果多个条件需同时判断时,也可以使用 or (或),表示两个条件有一个成立时判断条件成功;使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。

案例还可以使用下面的代码实现:

num =  int(input("请输入一个整数:"))
if num > 10 and num%2 == 0:
	print("输入的数是一个大于10的偶数")
else:
	print("输入的数不是一个大于10的偶数")
三目运算

语法:

result1  if 判断条件  else  result2

若条件成立则执行result1,否则执行result2。result可以是变量,也可以是常量也可以是表达式。

本质:将if语句强制性的写在一行,完成一个二选一的效果。

案例:判断某个数是否为偶数

number = int(input("请输入一个整数"))
res = True if number%2 == 0 else False
print(res)

猜你喜欢

转载自blog.csdn.net/TaoismHuang/article/details/91042983