我们在编程中经常需要通过检查某个条件,从而决定去做什么。条件语句就是针对这一情景应用的。本篇主要介绍 if 和 while。
(一) if语句
先来个总览:
if 条件一:
条件一对应的代码块 ①
elif 条件二:
条件一对应的代码块 ②
else :
不满足条件一和条件二对应的代码块 ③
if 语句的核心就是值为True 或者False 的表达式,即为上例中的条件一,条件二。在满足不同的条件下,执行不同的代码块,也就是代码块①②③,只会执行一个。
判断条件表达式值通常的情况:
- 判断是否相等,比如 'a'=='A' ,或者 'a' != 'A' ;
print('a'=='A' )
print('a' != 'A' )
- 数字比较
print(96>69)
print(9-6>5)
- 检查多个条件,用 and ,or关联起来组成一个表达式,可以简化代码
print(1>2 and 5>1)
print(1>2 or 5>1)
if elif else结构中,可以多个elif,也可以没有elif,可以有else,也可以没有。当有多个不同的条件需要判断,并列写if条件语句即可。
(二) while语句
while循环不断的检测表达式的值,如果为True,执行代码块;如果为False,退出while循环;
while(条件表达式):
满足条件的代码块
-
如何使用标志位active来控制while循环的中断和进行
msg = ''
active = True
while active:
msg = input('请输入y 或者 n') #input返回的类型为字符串str(即使用户输入数字)
if msg.lower() == 'y': #将输入变成小写
active = True
else:
active = False
-
使用break退出while循环
break可以强行退出循环,包括while循环,for 循环。
i = 10
while True:
if i > 5:
i = i - 1
else:
print("强行退出")
break
print(i)
输出为:
9
8
7
6
5
强行退出
可以看出,执行了break之后,没有再打印数据。所以break会无视标志位True强行退出循环的。
-
使用continue退出当前while循环
和break不同,break是退出全部循环,continue是退出当前这次循环。
i = 10
while i > 1:
i = i - 1
if i > 5:
continue
print(i)
输出为:
5
4
3
2
1
可以看出,在i的值为9,8,7,6的时候,执行了continue,没有输出打印i。即遇到continue后不再往下执行代码,直接开始下一次循环。本例中一共跳过了4次循环。如果换成break,第一次循环就成立,直接跳出,没有一次打印。
结语:条件语句比较简单,使用while的时候,用标志位来控制开关很不错。break和continue可以提高代码效率。
点赞评论走起啊~