目录
前言
一、while循环
二、while条件
1.while条件--固定值
2.while条件-运算符
三、避免死循环
1.条件不为恒定值
2.条件为恒定值
2.1.避免死循环-continue
2.2.避免死循环-break
2.3.避免死循环-break+continue
总结
前言
在Python编程中,循环结构是构建程序逻辑的重要基石之一。其中,
while
循环以其灵活性和高效性,成为了处理重复任务的首选工具。无论是进行简单的数据校验,还是构建复杂的迭代算法,while
循环都能发挥其独特的优势。通过合理设置循环条件和内部逻辑,我们可以轻松实现程序的自动化和智能化,为编程实践带来无尽的便利和可能。本文将深入探讨Python中while
循环的使用方法和应用场景,
一、while循环
生活中我们经常会遇到一些重复的情况,例如:每天奔波于家和公司之间、循环播放音
乐、网站密码输错时需重新输入等。
代码中想要实现一些重复行的操作,可以借助while循环语句来实现。例如实现:提示用
户输入用户名和密码,如果输入错误则重新提示用户输入用户名和密码等。
while循环语法结构:
while 条件:
...
...
循环体
执行逻辑:
先对条件进行判断,条件结果为False,则不会进入循环体;
条件结果为True,则进入执行循环体中的所有代码,循环体中代码执行完之后,会再次回到while条件判断的位置,再次判断此时条件,如果为True,则循环体中的代码会再执行一遍,然后再回到while条件判断,直到条件为False,跳过循环体中代码,跳出while循环。
让某段代码逻辑去反复执行,这个就叫循环,具体的循环次数,是由条件判断的
1.只要满足条件,那么就会去执行一次
2.执行到辑代码块的最后一行,就会重新去判断条件
3.如果再次判断的条件,依旧满足的话,就会再次去执行(如果条件为False,就会终止循环)
如果while的判断条件,始终都满足 -- 一直执行/死循环
注:手动终止代码的运行,有可能会报错
二、while条件
while后面的判断条件可以用各种数据类型的值,也可以是运算符
各种数据类型的值:数字、字符串、列表、元组、字典、集合
运算符,主要包括:比较运算符(> < == >= <=)、逻辑运算符(and,or,not)、成员运算符(in,not in)
1.while条件--固定值
while后的条件使用固定的值:如数字、字符串、列表、元组、字典、集合等。
其中非0值,非空值(非空字符串、非空列表、非空数组、非空字典、非空集合等)=== True
其中0,空值(空字符串、空列表、空数组、空字典、空集合等) === False
注意:如果是Flase,则无法进入循环体;如果是True,则是一个死循环
while 0:
print("这是循环体0")
while 100:
print("这是循环体100")
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
这是循环体100
这是循环体100
这是循环体100
这是循环体100
这是循环体100
这是循环体100
。
。
。
2.while条件-运算符
while条件里面中使用运算符,主要包括:
比较运算符(> < == >= <=)、逻辑运算符(and,or,not)、成员运算符(in,not in)
注意:如果是Flase,则无法进入循环体;如果是True,则是一个死循环
"""
运算符,主要包括:
比较运算符(><==>=逻辑运算符f(and, or, not)成员运算符(in,not in)
"""
while 1 > 2:
print('这是循环体0')
while 1 < 2:
print('这是循环体1')
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
这是循环体1
这是循环体1
这是循环体1
这是循环体1
。
。
。
三、避免死循环
上述的案例中,发现要么无法进入循环体,要么就是死循环,如何避免这种情况?
避免死循环的方式:
1. while后面的条件不为恒定值
• 引入变量,并在内部实现变量的递增或递减
• 变量与while后面的条件组合
2. while后面的条件为恒定值
• 引入continue和break
• 添加内部判断条件
1.条件不为恒定值
while后面的条件不为恒定值
1. 引入变量,并在内部实现变量的递增或递减
2. 变量与while后面的条件组合
# 通过改变while的条件,去防止判断条件恒定
a = 0
while a < 6:
print("这是循环体", a)
a += 1
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
这是循环体 0
这是循环体 1
这是循环体 2
这是循环体 3
这是循环体 4
这是循环体 5
b = 10
while b: # 非0则为True ,等与0就是False
print("这是循环体", b)
b -= 2
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
这是循环体 10
这是循环体 8
这是循环体 6
这是循环体 4
这是循环体 2
2.条件为恒定值
while后面的条件为恒定值
1. 引入continue和break
2. 添加内部判断条件
2.1.避免死循环-continue
continue:结束本次循环,继续下一次循环
while True:
...
continue
...
执行过程:在循环体中遇到continue之后,本次循环不再执行continue下面的代码,直接回到while条件判断的位置,开始下一次循环。
# 遇到continue这个关键字,这个时候不去执行往下的代码(循环内部),直接重新去判断条件
while True:
print('hello')
continue
print('python')
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
hello
hello
hello
hello
。
。
。
2.2.避免死循环-break
break:终止while循环
while True:
...
break
...
执行过程:while循环体一旦遇到break,则立即终止while循环,从break的位置直接跳出while,去执行while之后的代码。
# while后面的条件为恒定值引入continue和break添加内部判断条件
while True:
print('hello python')
break
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
hello python
2.3.避免死循环-break+continue
# break+continue控制循环次数
# 使用break/continue,循环3次,打印出hello python
num = 1
while True:
print('hello python', num)
num += 1
if num <= 3:
continue
else:
break
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
hello python 1
hello python 2
hello python 3
总结
while
循环作为Python中重要的控制流语句,其简洁而强大的功能使得在处理重复任务时变得高效而灵活。通过掌握while
循环的精髓,我们能够在编程中更加自如地结合break和continue控制程序的执行流程,提升代码的质量和效率。