程序的循环结构
python语言中一共只提供两种循环方式,一种叫遍历循环,一种叫无限循环。其中遍历循环对应一个保留字for,无限循环对应一个保留字while,掌握这两种循环就掌握了python的所有循环表达方式,下面我们一起来学习吧。
01
遍历循环
遍历循环指遍历某一个结构形成的循环运行方式,是有保留字for in 构成的循环结构,它可以从遍历结构中逐一提取元素放到循环变量里,完整遍历所有元素后结束。遍历循环有很多的应用:计数循环、字符串遍历、列表遍历、文件遍历.....我们逐一来看一下
①计数循环
计数N次
![adcf73a79d105fd6869677677846934a.png](https://i-blog.csdnimg.cn/blog_migrate/afd2eb9cb5b844792751f30e70d3a85b.png)
我们也可以对i进行一些操作,比如print在i之前增加字符串,如
![1a6499c65a4d1d3e9e16ef12f2e2ac6d.png](https://i-blog.csdnimg.cn/blog_migrate/5baf07caa4ac83aec81892d8cd7751f0.png)
计数循环N次中我们可以在中间的语句块中使用这个变量i,也可以不使用变量i。总之for in range()是循环N次,至于中间使不使用变量根据程序的逻辑来决定。我们可以进一步来拓展range函数的使用方式来实现特定次的计数循环。使用方法是for i in range(M,N,K),M,N,K是作为函数的参数,这个函数会产生一个数字序列:从M开始到N之前的整数(不到N),并且以K为步长。我们来看看使用例子:
![51f1d04a3f9f4508300d4776c4aee603.png](https://i-blog.csdnimg.cn/blog_migrate/aa8f46dc9c86b3a32e8e2bffa9216f40.png)
通过for in range的组合我们可以实现计数循环,这是遍历循环的具体应用。
②字符串遍历循环
遍历循环也可以应用在字符串上,形成字符串遍历循环。它能够从字符串中按顺序取出每一个字符放到变量中,针对每一次取出的字符执行一次语句块,进而产生循环。
![d323b5f92a4ba25dcb88ab9f1178f80a.png](https://i-blog.csdnimg.cn/blog_migrate/cb443cf89ff43b74915d731d5f6e362f.png)
我们可以把字符串想象为一种可以遍历的结构,因为它其中包含了很多字符。
③列表遍历循环
我们还可以对列表进行遍历,形成列表遍历。结构是for item in ls,其中ls是一个列表,遍历其每个元素,产生循环,如:
![8d0d22504950220486ebadba444d8de6.png](https://i-blog.csdnimg.cn/blog_migrate/5b2401e9d160631ac0cf5ebe3f1a1d8c.png)
④文件遍历循环
for i就是在遍历后面的组合结构中的每一个元素,这个结构还能对文件进行遍历,并且产生循环,使用该方法为:
![49b06c8ec55d9fbcc88ad1bc17e348e9.png](https://i-blog.csdnimg.cn/blog_migrate/d5899934009ef252c2545f6345fedd7d.png)
fi是一个文件的标识符,遍历其每行,产生循环。文件标识符是我们可以对一个外部的文件通过python的函数将文件打开,如果这个文件是以字符形式打开,那么它就会表示为一个文件的标识的名字,相当于用一个变量来表示系统中的一个文件,这个变量就叫文件标识符。for line in fi指遍历这个文件的每一行。
02
无限循环
无限循环是由条件控制的循环运行方式,简单说它已经不再是遍历某一个结构而是根据这个条件来进行循环,反复执行语句块,知道条件不满足时为止。我们举个简单的例子:
![41dea3015a586366b63e9d938516df78.png](https://i-blog.csdnimg.cn/blog_migrate/84c331f3fe1d4b9ed55c5070be0a1a82.png)
我们把上边的程序修改一下:
![7b73a8b28d7e5bc7e36ffdde599f036d.png](https://i-blog.csdnimg.cn/blog_migrate/1c20cf8d070fc02e4e791bf610853436.png)
这段程序将永远运行下去,因为每一次判断条件都是成立的。那么在一个程序中我们写了一个循环,它循环执行又永不退出,我们可以用ctrl+c组合键退出当前程序执行。
03
循环控制保留字
python和其他语言一样,提供了两个循环控制保留字,分别是break和continue。break指跳出并结束当前整个循环,执行循环后的语句。continue指结束当次循环,继续执行后续次数循环。这两个保留字都可以与for和while循环搭配使用。我们来看看下面的例子:
![cf44a4f9e430cdf72ac30f90939ab3f0.png](https://i-blog.csdnimg.cn/blog_migrate/d91866263d26704e40ca312dfb15dc56.png)
![8a611a5d498b3a4f20f0355aba8c3595.png](https://i-blog.csdnimg.cn/blog_migrate/78a5a1ddb10cbf4819680b1e27f6a43d.png)
如果程序有两层或者多层循环,该如何使用break呢,我们来看个例子:
![b0c6f013e4d8c642f0926d13cfece8f2.png](https://i-blog.csdnimg.cn/blog_migrate/243df9cc7e801b91c6262af5693c8d9d.png)
程序运行结果如何,小编在这儿就不给大家展现了,大家动手试试吧~
参考:中国大学慕课mooc:python语言程序设计
![f58358f7f603f60d200ce6b8b1847bf6.png](https://i-blog.csdnimg.cn/blog_migrate/bb67fbb25415696faeb872e3fd076a35.jpeg)
编辑|314
审核|Q酱 一条gai一辆车