16.if判断语句

李光朱课程 2024-03-26 04:34:11
引入

很多时候当我们打开某个App,需要输入用户名和密码,如果正确那么就可以登录,否则不让使用

在我们身边这样场景有很多很多,想要实现这样的功能那我们就需要学习if判断

基本使用

if是用来进行判断的,其使用格式如下:

if 要判断的条件: 条件成立时,要做的事情

示例代码如下:

age = 30print('----if判断开始----')if age >= 18: print('已经成年了') # 当前代码处有缩进 缩进为4个空格 一个Tab键print('----if判断结束----')

注意:

if判断总体来说:当条件满足后就要做某些事情,这些事情以及if它们是一个整体如果if条件成立后,要做的事情有很多,那么都需要在行首缩进4个空格(只需要敲一个tag键,Pycharm就会自动换行为4个空格)

示例代码如下:

age = 30print('----if判断开始----')if age >= 18: # 如果当前条件不成立则以下三句print都不会打印 print('我已经成年了') print('我该懂事了') print('尽快学完python开发出去赚钱了')print('----if判断结束----') # 此处代码没有缩进 表示当前打印语句不在if语句控制范围之内,无论if条件是否成立都会执行案例演示

代码:

age = 30print("------if判断开始------")if age >= 18: print("我已经成年了") print("我该懂事了") print("尽快学完python开发出去赚钱了")print("------if判断结束------")

结果:

------if判断开始------我已经成年了我该懂事了尽快学完python开发出去赚钱了------if判断结束------

说明:

age的值是30,所以age >= 18的结果是True,所以就会执行3个print

代码:

age = 16print("------if判断开始------")if age >= 18: print("我已经成年了")print("------if判断结束------")

结果:

------if判断开始------------if判断结束------

说明:

age的值是16,所以age >= 18的结果是False,所以不会执行print("我已经成年了")案例补充

示例一:

cool = Truemoney = 2000000height = 178if cool == True and money >= 1000000 and height >= 176: # 如果3个条件头满足,那么就是 高富帅 print("恭喜你,你是高富帅")

示例二:

name = input("请输入用户名:")password = input("请输入密码:")if name == "刘德华" and password == "123456": print("登录成功...")随堂练习

要求:从键盘获取自己的年龄,判断是否大于或者等于18岁,如果满足就输出“哥,已成年,网吧可以去了”

使用input从键盘中获取数据,并且存入到一个变量中使用if语句,来判断 age >= 18是否成立else 判断子句引入

想一想:在使用if的时候,它只能做到满足条件时要做的事情。那需要在不满足条件的时候做某些事,该怎么办呢?

答:使用 else

else 与 if 配合使用

格式如下:

if 条件: 满足条件时要做的事情1 满足条件时要做的事情2 满足条件时要做的事情3 ...(省略)...else: 不满足条件时要做的事情1 不满足条件时要做的事情2 不满足条件时要做的事情3 ...(省略)...

示例一:

ticket = True # 用True代表有车票,False代表没有车票if ticket == True: print("有车票,可以上火车") print("终于可以见到Ta了,美滋滋~~~")else: print("没有车票,不能上车") print("亲爱的,那就下次见了")

结果一:

有车票,可以上火车终于可以见到Ta了,美滋滋~~~

结果二:

没有车票,不能上车亲爱的,那就下次见了

注意:

无论是在if语句还是在else子句控制的代码之下都需要进行代码缩进!随堂练习

要求:从键盘输入身高,如果身高没有超过150cm,则进动物园不用买票,否则需要买票。

提示:input获取的数据不是整数类型,需要用int()转换,例如int("100")结果就是整数100

参考代码:

height = input("请输入身高:") # 获取身高height = int(height) # 类型转换为整数,只有整数才能比较大小if height <= 150: print("可以直接入园,无需购票")else: print("请先购票,再入园")elif 判断子句

if能完成条件满足时做可以执行某些代码

if-else能完成条件满足时执行某些代码,不满足时执行另外一些代码

如果有这样一种情况:当条件1满足时做事情1;条件2满足时做事情2;条件3满足时做事情3,那该怎么实现呢?

答:elif

elif 使用

elif的使用格式如下:

if 条件1: 事情1elif 条件2: 事情2elif 条件3: 事情3# ...省略N个条件...elif 条件n: 事情nelse: 以上条件都不满足时执行的代码

说明一:执行流程

当条件1满足时,执行事情1,然后整个if结束当条件1不满足条件2满足时,则执行事情2,然后整个if结束当条件1、条件2不满足条件3满足时,则执行事情3,然后整个if结束依次类推,如果条件1、条件2、条件3.。。。。条件n-1都不满足且条件n满足,则执行事情n,然后整个if结束如果没有任何条件满足,那么就执行else中的事情

说明二:else

else不是必须的,根据实际情况决定是否添加,如果所有条件满足时做的事情很明确,且没有全部都不满足的时候,此时就不用写如果当前能考虑的条件都有对应的代码,但不能保证所有条件都考虑到了,此时建议写上else示例代码score = 77 # 定义变量存储分数if score >= 90 and score <= 100: # 如果分数在90~100 print('本次考试,等级为A')elif score >= 80 and score < 90: # 如果分数在80~90 print('本次考试,等级为B')elif score >= 70 and score < 80: # 如果分数在70~80 print('本次考试,等级为C')elif score >= 60 and score < 70: # 如果分数在60~70 print('本次考试,等级为D')elif score >= 0 and score < 60: # 如果分数在60以下 print('本次考试,等级为E')else: # 如果分数不在0~100之间,就认为错误 print("分数有误...")注意点

在if判断中,最多只能有1个else,但可以有N个elif,必须有1个if

下面的写法是错误的

错误示范1:一个if最多有1个else

if 100 > 60: print("哈哈哈1")else: print("哈哈哈2")else: print("哈哈哈3")

错误示范2:一个if判断必须有1个if

else: print("哈哈哈2")总结

到现在为止,if总体来说学习了3种

第1种:只判断一个条件,我们用if来实现第2种:可判断2个条件(满足、不满足),我们用if...else...来实现第3种:可以判断N个条件,我们用if...elif...elif...else...来实现if 嵌套引入

想一想:

坐火车或者地铁的实际情况是:先进行安检如果安检通过才会判断是否有车票,或者是先检查是否有车票之后才会进行安检,即实际的情况先对某个条件进行判断然后再判断另外一个条件的,这样的情况该怎样解决呢?

答:

if嵌套

if 嵌套的格式if 条件1: 满足条件1时可以做的事情 满足条件1时可以做的事情 ... if 条件2: 满足条件2时可以做的事情 满足条件2时可以做的事情 ...

说明

外层if与内层if至于是3种if判断的哪一种都是可以的,根据实际情况来决定示例代码

外层是if...else...内层也是if...else...

ticket = True # 用True代表有车票,False代表没有车票knife_lenght = 9 # 刀子的长度,单位为cmif ticket == 1: print("有车票,可以进站") if knife_lenght < 10: print("通过安检") print("终于可以见到Ta了,美滋滋~~~") else: print("没有通过安检") print("刀子的长度超过规定,等待警察处理...")else: print("没有车票,不能进站") print("亲爱的,那就下次见了")

结果一:ticket = True knife_lenght = 9

有车票,可以进站通过安检终于可以见到Ta了,美滋滋~~~

结果二:ticket = True knife_lenght = 20

有车票,可以进站没有通过安检刀子的长度超过规定,等待警察处理...

结果三:ticket = False knife_lenght = 9

没有车票,不能进站亲爱的,那就下次见了

结果四:ticket = False knife_lenght = 20

没有车票,不能进站亲爱的,那就下次见了

想一想:

为什么结果三和结果四相同???

随堂练习

情节描述:上公交车,并且可以有座位坐下

要求:输入公交卡当前的余额,只要超过2元,就可以上公交车;如果车上有空座位,就可以坐下

请编写代码实现上述要求。

if 代码案例参考代码import randomplayer = input('请输入:剪刀(0) 石头(1) 布(2):')player = int(player)# 生成一个随机整数:0、1、2 中的某一个computer = random.randint(0,2)# 用来进行测试#print('player=%d,computer=%d',(player,computer))if ((player == 0) and (computer == 2)) or ((player == 1) and (computer == 0)) or ((player == 2) and (computer == 1)): print('获胜,哈哈,你太厉害了')elif player == computer: print('平局,要不再来一局')else: print('输了,不要走,洗洗手接着来,决战到天亮')

0 阅读:0

李光朱课程

简介:感谢大家的关注