循环语句的作用
可以更高效的重复执行代码。
eg:老师让你罚抄一百遍校训,这时候我们就可以利用循环语句,让电脑帮我们循环写100遍,是不是简单又高效?
---------------------------------------------------------------------------------------------------------------------------------
循环语句的分类
while语句和for语句。
---------------------------------------------------------------------------------------------------------------------------------
while 语句
代码
while 条件:
条件成立执行的代码1
条件成立执行的代码2
……
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
实例
我们先从需求开始分析:现在我们需要重复打印5次“how are you”,我们肯定需要 while 语句。但这时便会有一个问题:我怎么让他控制在5次呢?我们可以从 while 语句的特点进行分析,当 while 后面的条件成立,它便会执行对应的代码,那条件不成立便不会执行。我们让这个条件前5次成立,第6次不成立不就好了?那怎么让它前5次成立而第6次不成立呢?结合前面所学的知识,比较运算符是返回布尔型数据的,那我假如用“<”这个比较运算符,控制变量 a 的值与一个确定的数之间的大小关系,不就可以使条件成立或不成立了吗?这样是满足条件成立或不成立了,但是这种情况下数是不变的,返回的布尔型数据也是不变的,那怎么让它变化呢?我们可以在循环当中让这个变量发生变化,也就是给它加一或减一,这样一来当循环够足够次数的时候,变量的值就大于等于确定的值,这样便返回 False,从而跳出循环。
根据上面的分析,可以写出下面这些代码:
i = 0
while i < 5:
print('how are you')
print(f'循环第{i+1}次')
i += 1
运行结果如下:
注:在循环语句中,通常用i和j来表示循环的次数。
i 的取值通常从0开始,这时为了贴合计算机的工作习惯。
while 语句的执行流程
在了解完 while 语句的语法之后,我们不禁思考:while 语句在 python 中具体是怎样执行的呢?根据前面的经验,我们可以使用调试工具(debug)来看它具体是如何执行的。
可以看到当条件成立时,python 会一直在 while 语句中循环执行,直到条件不成立,这才跳出循环。这就是 while 语句的具体执行流程。我们也可以在上述代码再加一行代码(不属于while语句中的),通过结果来强化了解while语句的执行流程。
i = 0
while i < 5:
print('how are you')
print(f'循环第{i+1}次')
i += 1
print('i am fine, think you')
运行结果如下:
可以看到 print('i am fine, think you') 这行代码的执行结果只输出了一遍,这就再次说明 while 语句的执行是“只要条件成立就一直在语句内循环,直到条件不成立才跳出循环”这一流程。
练习题
1、如何用while语句实现1~100的累加
2、如何用while语句实现1~100之间偶数的累加