文章目录
七、循环语句 while
1.循环语句while
1. 程序结构
程序分为三种执行结构 :
- 顺序结构 -> 从上至小,顺序执行
- 分支结构 -> 根据条件是否成立,选择不同的代码执行
- 循环结构 -> 一段代码会重复执行多次
2. 循环四要素:
- 循环变量初始值
- 循环条件
- 循环体代码
- 让循环变量趋近于结束条件的代码
3. 循环执行过程:
以上方描述的1234 做为过程
1 -> 2 -> 3 -> 4 -> 2 -> 3 -> 4 -> 2 -> 3 -> 4 ->..... 2(不满足条件,退出循环)
4. while格式:
while 条件(判断计数器是否达到目标次数):
循环体代码
处理条件(计数器 + 1)
注意:
while
语句以及缩进部分是一个 完整的代码块
2. break
- break 只能用在循环(while和for循环)里
- break 的作用是用来结束循环,不管循环还有多少次
- 对于嵌套循环,只跳出最内层循环
3. continue
- continue 只能用在循环(while和for循环)里
- continue 的作用是用来结束本次循环,不管循环体中还有多少代码没有执行,进入下一次循环
- 对于嵌套循环,只跳出最内层循环
4. while循环嵌套
while 条件1:
while 条件2:
循环体
处理条件 2
处理条件 1
执行过程:
- 外层循环循环一次,内层循环循环一圈
5. while-else
在执行完循环后,执行else后的代码
注意:
- 只有正常结束,才会执行else后的代码
- 当用break打断循环,不会执行else后的代码
i=1
while i<5:
print(i)
else:
print('over')
6. 循环语句的优化
- 三大原则
编写循环时,遵守下面三个原则可以大大提高运行效率,避免不必要的低效计算:
- 尽量减少循环内部不必要的计算
- 嵌套循环中,尽量减少内层循环的计算,尽可能向外提。
- 局部变量查询较快,尽量使用局部变量
- 其他优化手段
-
连接多个字符串,使用
join()
而不使用+
-
列表进行元素插入和删除,尽量在列表尾部操作
7. zip()进行迭代
我们可以通过 zip()
函数对多个序列进行并行迭代,
zip()
函数在最短序列“用完”时就会停止。
names = ("高淇","高老二","高老三","高老四")
ages = (18,16,20,25)
jobs = ("老师","程序员","公务员")
for name,age,job in zip(names,ages,jobs):
print("{0}--{1}--{2}".format(name,age,job))
原理:
zip()
函数将多个序列进行组合,使多个数据成为元组的列表,然后返回zip对象,通过list()
转换成列表后,对该列表进行遍历即可