前言
前面讲解了for循环,大致理解为重复执行某项操作,在python中还有另外一个循环语句,也能实现类似的功能,但在具体的应用场景上会存在一定的区别。
while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:
while 判断条件:
语句块
while的执行流程大致如下(与for循环的执行流程基本一致):
2.while循环
用while循环来完成之前用for完成的例子,之前用for计算1~100的累计总和的例子:
如果写while需要怎么写呢?while需要定义好条件变量,伪代码大致是这样子的:
while 条件变量<=100:
计算总和 = 条件变量 + 计算总和
这样是否OK呢?
结果不对啊,并且一直没有结束——这样进入了死循环(永远不会结束的循环),因为条件变量没有进行自加,赶紧中止掉:
正确的写法应该是这样的:
while 条件变量<=100:
计算总和 = 条件变量 + 计算总和
条件变量 = 条件变量 + 1
执行情况如下:
如果对比会发现while在这种情况的处理下速度要快些:
while: executed in 27ms
for: executed in 35ms
但在咱们日常工作中差异不会太大,可以根据个人习惯来进行使用。
这里计算的都是1~100的加和,那如果想要计算1, 3, 5, 7, 9, 11, 13, 15, 17, 19…… 95, 97, 99(即100以内的奇数-不能被2整除)的总和,那么用for与while又该如何处理呢?下节我们聊下for与while的实现情况,以及其他的一些可能的应用场景。