5.2 循环结构

5.2 循环结构


在程序设计中,循环是指从某处开始有规律地反复执行某一块语旬的现象,我们将复制执行的块语句称为循环的循环体。使用循环体可以简化程序,节约内存、提高效率。Python 中的循环语句有while 循环和for 循环。

5.2.1 while 循环

Python 中while 循环语句的一般形式如下:

while 判断条件:

         语句

while 循环语句同样需要注意冒号和缩进。另外,在Python 中没有do"'while 循环。

单击"开始"菜单,打开Python 3.6.5 Shell 软件,然后单击菜单栏中的"FilelNew File" 命令,创建一个Python 文件,并命名为"Mypython5-5.py" ,然后输入如下代码:

单击菜单栏中的"Run/Run Module" 命令或按下键盘上的"F5" ,就可以运行程序代码,并提醒请输入一个大于0 的整数,在这里输入80 ,显示"1 加到80 的和为: 3240" ,如图5.5 所示。

5.2.2 while 循环使用else 语句

在while ... else 语句中,如果条件语句为False时,则执行else 的块语句。

单击"开始"菜单,打开Python 3.6.5 Shell 软件,然后单击菜单栏中的"File/New File" 命令,创建一个Python 文件,并命名为"Mypython5-6.py" ,然后输入如下代码:

单击菜单栏中的"Run/Run Module" 命令或按下键盘上的"F5" ,就可以运行程序代码,结果如图5.6 所示。

5.2.3 无限循环

可以通过设置条件表达式永远不为False 来实现无限循环,下面通过实例来说明一下。

单击"开始"菜单,打开Python 3.6.5 Shell 软件,然后单击菜单栏中的"File/New File" 命令, 创建一个Python 文件,并命名为"Mypython5-7.py" ,然后输入如下代码:

单击菜单栏中的"Run/Run Module" 命令或按下键盘上的"F5" ,就可以运行程序代码,这时显示请输入一个字母,随便输入一个字母,就会显示这个字母,并继续显示请输入一个字母,这个程序就会这样无限循环运行下去,如图5.7 所示。

对于无限循环,该如何结束程序运行呢?按下键盘上的"Ctrl+C" 键,就可以结束无限循环。

提醒: 无限循环在服务嚣的窑户瑞的实时请求非常有用。

5.2.4 for 循环

for 循环可以遍历任何序列的项目,如一个列表或者一个字符串。for 循环语句的一般形式如下:

单击"开始"菜单,打开Python 3.6.5 Shell 软件,然后单击菜单栏中的"File/New File" 命令,创建一个Python 文件,并命名为"Mypython5-8.py" ,然后输入如下代码:

names = 〔"用涛","王佳欣","王雨欣","张高i左","高飞"〕

for x in names :

print( x)

单击菜单栏中的"Run/Run Module" 命令或接下键盘上的"F5" ,就可以运行程序代码,结果如图5.8 所示。

    

5.2.5 在for 循环中使用range()函数

range()函数的语法如下:

range(stop)

range(start, stop〔 , step〕)

range()函数是一个用来创建算数级数序列的适用函数,返回一个[start ,start + step , start +2*step ,…]结构的整数序列; range 函数具有一些特性:

第一,如果step 参数默认,默认1 ;如果start 参数默认,默认0 。

第二,如果step 是正整数,贝IJ最后一个元素( start + i x step ) 小于stop。

第三,如果step 是负整数,贝Ij最后一个元素( start + i x step )大于stop 。

第四, step 参数必须是非零整数,否则显示异常。

需要注意的是, range() 函数返回一个左闭右开( [left , right) )的序列数。例如range(4) ,显示的是0 , 1 , 2 , 3 ,没有4; range(2 , 5) ,显示的是2 , 3 , 4 ,没有5 。

下面通过实例来讲解一下如何在for 循环中使用range() 函数。

单击"开始"菜单,打开Python 3.6.5 Shell 软件,然后单击菜单栏中的"FilelNew File" 命令,创建一个Python 文件,并命名为"Mypython5-9.py" ,然后输入如下代码:

单击菜单栏中的"Run/Run Module" 命令或按下键盘上的"F5" ,就可以运行程序代码,结果如图5.9 所示。