这是树哥讲python的第七篇文章。
在所有的编程语言中,循环语句是最常用的语句之一,因为循环语句可以充分发挥计算机运算速度优点,很多人做起来无法忍受的重复,对于计算机来讲轻松完成。所以今天,我们就是就以“九九乘法表”的案例来聊一聊python中的循环语句。
一、案例分析
案例:
题目:打印“九九乘法表”,如下图:
分析:
从最终打印的图来看,
- 第一行打印:1x1=1
- 第二行:1x2=2 2x2=4
- 第三行:1x3=3......3x3=9
- .......
- 第九行:1x9=9.....9x9=81
总共需要打印九行,每一行都是打印的个数就是这个的行数,意思是第一行打印一个,第二行打印2个,第三行打印3个。
这样就会出现两个循环:
- 管控行的循环,第一行到第九行。需要做到每行结束换行。
- 管控列的循环,也就是真正打印内容的部分。
第一层控制行的循环:
for i in rang(1,10)
print()
需要解释的是,在for语句中的rang(1,10)中,只会循环1-9。
第二层管控列的循环
for j in rang(1,i+1)
print('{}x{}={}t'.format(j, i, i*j), end='')
这两段结合起来就变成如下的程序:
执行结果如下图:
二、python中的循环用法
for语句循环
for语句的基本语法是:
其中,条件主要有两种表现形式:
- for in 列表或字符串
例如:
- for in range(范围)
- range(值),例如:
从上图可以看出,给定6的时候,打印的数字是从0-5。
-
- range(范围),例如:
从上图可以看出,range的范围是3-6,只是回打印出3,4,5三个数字。这也就是我们在案例中,行数是9行,但range却是(1,10)。列数本来是:1到i,但range却是(1,i+1)的原因。
while循环语句
while语句的基本语法是:
while 条件: 执行语句
可以实现有限循环或者无限循环。
- 有限循环,如下图:
- 无限循环,无限循环通常可以用于接受客户端的实时请求:
- 也可以添加else语句,意味着执行完条件的奖励。如下图:
可以看到, 在else语句中的部分,是执行完循环后执行的语句。
- 简短方式:把语句写成一行。如下图:
块的快的
控制语句
在循环中,还有一些控制语句需要说明:
- break 跳出循环
在循环的过程中,规定跳出循环的情况。 - continue 进行下轮循环
跳过本轮循环的剩余语句,开始下轮的循环。
总结: 循环语句的语法内容不算多,在程序中的代码量也不高,但在一般计算机中执行程序的80%的时间都在执行循环语句,如果循环语句写得不好也很容易出错,或者带来效率低下的问题。不过,要想学好循环语句,甚至是之后的递归循环,就必须有一定的数学抽象能力才行。