【python基础】if语句-条件测试
视频讲解
https://www.bilibili.com/video/BV18m4y1p7Ch/
1.条件控制语句(if语句)-理解
编程时经常需要检查一些条件,并据此决定采取什么措施。在Python中,使用if语句作为条件控制语句,能够根据程序中条件的真假,做出相应措施。
其语法格式之一:
假设我们根据输入的年龄去判断是否成年,编写程序如下所示:
关于缩进
缩进代表代码块的下一层级,相同的缩进代表相同层级的代码块
比如我们再当年满18周岁的条件不通过时,输出两条语句,编写程序如下所示:
发现输出了两条语句,但是如果第二条输出语句不加缩进,说明第二条输出语句与if语句是同层级代码块,但是与if语句里面的代码块,就不是同层级语句了,那么第二条输出语句不经过if语句的条件判断将在if语句执行结束后执行。
未满18周岁测试结果如下所示:
年满18周岁测试结果如下所示:
同样还是会输出第二条输出语句,这和我们的预想是不符合的。
所以在使用if语句的时候一定要注意缩进,注意整理代码的层级
2.条件测试(单条件)
每条if语句的核心都是一个值为True或False的表达式,这种表达式被称为条件测试。
Python根据条件测试的值为True还是False来决定是否执行if语句中的代码块。
如果条件测试的值为True,Python就执行紧跟在if语句后面的代码块。
如果条件测试的值为False,Python就忽略紧跟在if语句后面的代码块,要么执行else语言后面的代码块,要么继续顺序执行与if同层级的代码块。
其语法格式:
变量名和变量值我们之前都学习过,这里要特别学习的是条件运算符
运算符 | 意义 | 作用 | 返回值 |
---|---|---|---|
== | 等于 | 比较是否相等 | 相等返回True,不相等返回False |
!= | 不等于 | 比较是否不相等 | 不相等返回True,相等返回False |
> | 大于 | 返回x是否大于y | 大于返回True,不大于返回False |
< | 小于 | 返回x是否小于y | 小于返回True,不小于返回False |
>= | 大于等于 | 返回x是否大于等于y | 大于等于返回True,小于返回False |
<= | 小于等于 | 返回x是否小于等于y | 小于等于返回True,大于返回False |
! | 非 | 取反 | !True返回False,!False 返回True |
编写程序如下所示:
运行结果如下所示:
我们可以分别让num1 = 10 、num2 = 10 或者num1 = 20 、num2 = 10,来查看输出结果,这里就不过多演示了
3.条件测试(多条件)
如果想同时进行多条件的条件测试,例如,有时需要在两个条件都为True时,才执行相应的操作,而有时只要求两个中其中一个条件为True时就执行相应的操作。在这些情况下我们就需要逻辑运算符and或者or。
3.1同时成立(and)
要测试是否两个或者多个条件是否都为True,可使用逻辑运算符and,将两个或者多个条件测试合而为一;如果每个条件测试都为True,整个条件测试表达式就为True;如果至少一个条件测试为False,整个表达式就为False.
其语法格式:
条件测试1 and 条件测试2
假设要求查看某人是否是年满18岁的男人,编写程序如下所示
我们可以赋值给age和gender其他值来进行测试
3.2单个成立即可(or)
要测试两个或多个条件,只要其中任何一个条件为True即可,可以使用逻辑运算符or,仅当两个或多个条件测试都为False,使用or的表达式才为False
其语法格式:
条件测试1 or 条件测试2
假设要求查看该学员是否是年满18岁或者是男学员,编写程序如下所示
4.布尔值
布尔值就两个值True或者False,可以直接将布尔类型变量,当作测试条件。
比如一些程序中的状态变量,当该变量为True时,正常运行,当变量为False,退出运行等。这里就不做介绍了。