Python3 循环语句

转来的  很适合小白   感谢作者

 

Python中的循环语句有 for 和 while。

Python循环语句的控制结构图如下所示:

while 循环

Python中while语句的一般形式:

while 判断条件:
语句

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

以下实例使用了 while 来输出1-10之间所有的偶数:

1 num=10
2 count=0
3 while num>0 :
4 if num%2==0 :
5 print(num)
6 count +=1
7 num -=1
8 print("一个有",count,"个偶数!")

执行结果如下:

1 10
2 8
3 6
4 4
5 2
6 一个有 5 个偶数!

例九九乘法表:

1 a=1
2 while a<10 :
3 b=1
4 while b<=a :
5 print(str(b)+"x"+str(a)+"="+str(a*b),end="\t")
6 b +=1
7 print()
8 a +=1

执行的结果:

1 1x1=1
2 1x2=2 2x2=4
3 1x3=3 2x3=6 3x3=9
4 1x4=4 2x4=8 3x4=12 4x4=16
5 1x5=5 2x5=10 3x5=15 4x5=20 5x5=25
6 1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36
7 1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49
8 1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64
9 1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81

无限循环

我们可以通过设置条件表达式永远不为 false 来实现无限循环,实例如下:

1 #!/usr/bin/python3
2
3 var = 1
4 while var == 1 : # 表达式永远为 true
5 num = int(input("输入一个数字 :"))
6 print ("你输入的数字是: ", num)
7
8 print ("Good bye!")

执行以上脚本,输出结果如下:

1 输入一个数字  :5
2 你输入的数字是: 5
3 输入一个数字 :

你可以使用 CTRL+C 来退出当前的无限循环。

无限循环在服务器上客户端的实时请求非常有用。

while 循环使用 else 语句

在 while … else 在条件语句为 false 时执行 else 的语句块:

1 #!/usr/bin/python3
2
3 count = 0
4 while count < 5:
5 print (count, " 小于 5")
6 count = count + 1
7 else:
8 print (count, " 大于或等于 5")

执行以上脚本,输出结果如下:

1 0  小于 5
2 1 小于 5
3 2 小于 5
4 3 小于 5
5 4 小于 5
6 5 大于或等于 5

简单语句组

类似if语句的语法,如果你的while循环体中只有一条语句,你可以将该语句与while写在同一行中, 如下所示:

1 #!/usr/bin/python
2
3 flag = 1
4
5 while (flag): print ('欢迎!')
6
7 print ("Good bye!")

注意:以上的无限循环你可以使用 CTRL+C 来中断循环。

for 语句

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

for循环的一般格式如下:

for <variable> in <sequence>:
<statements>
else:
<statements>

Python loop循环实例:

1 >>>languages = ["C", "C++", "Perl", "Python"]
2 >>> for x in languages:
3 ... print (x)
4 ...
5 C
6 C++
7 Perl
8 Python
9 >>>

以下 for 实例中使用了 break 语句,break 语句用于跳出当前循环体:

 1 #!/usr/bin/python3
2
3 sites = ["Baidu", "Google","Runoob","Taobao"]
4 for site in sites:
5 if site == "Runoob":
6 print("hello Python!")
7 break
8 print("循环数据 " + site)
9 else:
10 print("没有循环数据!")
11 print("完成循环!")

执行脚本后,在循环到 "Runoob"时会跳出循环体:

1 循环数据 Baidu
2 循环数据 Google
3 hello Python!
4 完成循环!

range()函数

如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列,例如:

1 >>>for i in range(5):
2 ... print(i)
3 ...
4 0
5 1
6 2
7 3
8 4

你也可以使用range指定区间的值:

1 >>>for i in range(5,9) :
2 print(i)
3
4
5 5
6 6
7 7
8 8
9 >>>

也可以使range以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做'步长'):

1 >>>for i in range(0, 10, 3) :
2 print(i)
3
4
5 0
6 3
7 6
8 9
9 >>>

您可以结合range()和len()函数以遍历一个序列的索引,如下所示:

 1 >>>a = ['Google', 'Baidu', 'Runoob', 'Taobao', 'QQ']
2 >>> for i in range(len(a)):
3 ... print(i, a[i])
4 ...
5 0 Google
6 1 Baidu
7 2 Runoob
8 3 Taobao
9 4 QQ
10 >>>

还可以使用range()函数来创建一个列表:

1 >>>list(range(5))
2 [0, 1, 2, 3, 4]
3 >>>

break和continue语句及循环中的else子句

break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。 实例如下:

 1 #!/usr/bin/python3
2
3 for letter in 'Runoob': # 第一个实例
4 if letter == 'b':
5 break
6 print ('当前字母为 :', letter)
7
8 var = 10 # 第二个实例
9 while var > 0:
10 print ('当期变量值为 :', var)
11 var = var -1
12 if var == 5:
13 break
14
15 print ("Good bye!")

执行以上脚本输出结果为:

 1 当前字母为 : R
2 当前字母为 : u
3 当前字母为 : n
4 当前字母为 : o
5 当前字母为 : o
6 当期变量值为 : 10
7 当期变量值为 : 9
8 当期变量值为 : 8
9 当期变量值为 : 7
10 当期变量值为 : 6
11 Good bye!

continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环。

 1 #!/usr/bin/python3
2
3 for letter in 'Runoob': # 第一个实例
4 if letter == 'o': # 字母为 o 时跳过输出
5 continue
6 print ('当前字母 :', letter)
7
8 var = 10 # 第二个实例
9 while var > 0:
10 var = var -1
11 if var == 5: # 变量为 5 时跳过输出
12 continue
13 print ('当前变量值 :', var)
14 print ("Good bye!")

执行以上脚本输出结果为:

 1 当前字母 : R
2 当前字母 : u
3 当前字母 : n
4 当前字母 : b
5 当前变量值 : 9
6 当前变量值 : 8
7 当前变量值 : 7
8 当前变量值 : 6
9 当前变量值 : 4
10 当前变量值 : 3
11 当前变量值 : 2
12 当前变量值 : 1
13 当前变量值 : 0
14 Good bye!

循环语句可以有 else 子句,它在穷尽列表(以for循环)或条件变为 false (以while循环)导致循环终止时被执行,但循环被break终止时不执行。

如下实例用于查询质数的循环例子:

 1 #!/usr/bin/python3
2
3 for n in range(2, 10):
4 for x in range(2, n):
5 if n % x == 0:
6 print(n, '等于', x, '*', n//x)
7 break
8 else:
9 # 循环中没有找到元素
10 print(n, ' 是质数')

执行以上脚本输出结果为:

1 2  是质数
2 3 是质数
3 4 等于 2 * 2
4 5 是质数
5 6 等于 2 * 3
6 7 是质数
7 8 等于 2 * 4
8 9 等于 3 * 3

pass 语句

Python pass是空语句,是为了保持程序结构的完整性。

pass 不做任何事情,一般用做占位语句,如下实例:

1 >>>while True:
2 ... pass # 等待键盘中断 (Ctrl+C)

最小的类:

1 >>>class MyEmptyClass:
2 ... pass

以下实例在字母为 o 时 执行 pass 语句块:

1 #!/usr/bin/python3
2
3 for letter in 'Runoob':
4 if letter == 'o':
5 pass
6 print ('执行 pass 块')
7 print ('当前字母 :', letter)
8
9 print ("Good bye!")

执行以上脚本输出结果为:

1 当前字母 : R
2 当前字母 : u
3 当前字母 : n
4 执行 pass 块
5 当前字母 : o
6 执行 pass 块
7 当前字母 : o
8 当前字母 : b
9 Good bye!

Python3 循环语句的更多相关文章

  1. 【python】Python3 循环语句

    [python]几种常见的循环 注意:如果涉及到程序中print语句中含有%d,%s,那么要在脚本最开始写语句:#coding=utf-8,才能够正常输出想要的数字或者字符串. Python3 循环语 ...

  2. Python3循环语句

    Python3 循环语句 Python中的循环语句有for和while. 循环语句控制结构图如下: 一.while循环 ①循环结构 while 判断条件: 执行语句 实例: n = int(input ...

  3. python013 Python3 循环语句

    Python3 循环语句本章节将为大家介绍Python循环语句的使用.Python中的循环语句有 for 和 while.Python循环语句的控制结构图如下所示: while 循环Python中wh ...

  4. python3循环语句while

    Python的循环语句有for和while语句,这里讲while语句. Python中while语句的一般形式: while 条件判断 : 语句 需要注意冒号和缩进.另外,注意Python中没有do. ...

  5. Python3 循环语句(十)

    Python中的循环语句有 for 和 while. Python循环语句的控制结构图如下所示: while 循环 Python中while语句的一般形式: while 判断条件: 语句 同样需要注意 ...

  6. (四)Python3 循环语句——for

    for循环的一般格式如下: for <variable> in <sequence>: <statements> else: <statements> ...

  7. (三)Python3 循环语句——while

    while语句的一般形式: while 判断条件: 语句 同样需要注意冒号和缩进.另外,在 Python 中没有 do..while 循环. 以下实例使用了 while 来计算 1 到 100 的总和 ...

  8. Python系列:三、流程控制循环语句--技术流ken

    Python条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: Python程序语言指定任何非0和非 ...

  9. python第三章:循环语句--小白博客

    Python条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: Python程序语言指定任何非0和非 ...

随机推荐

  1. 社区发现的3个评估指标:标准化互信息NMI,ARI指标,以及模块度(modularity)

    转载请注明出处:http://www.cnblogs.com/bethansy/p/6890972.html 一.已知真实社区划分结果 1.NMI指数,互信息和标准化互信息 具体公式和matlab代码 ...

  2. 课程一(Neural Networks and Deep Learning),第一周(Introduction to Deep Learning)—— 1、经常提及的问题

    Frequently Asked Questions Congratulations to be part of the first class of the Deep Learning Specia ...

  3. zookeeper知识点学习

    单机模式配置: Zookeeper 的启动脚本在 bin 目录下,Linux 下的启动脚本是 zkServer.sh 在你执行启动脚本之前,还有几个基本的配置项需要配置一 下,Zookeeper 的配 ...

  4. (转)AIX的Dump文件学习笔记

    原文:http://czmmiao.iteye.com/blog/1144999 DUMP文件概述 为了增强故障分析能力,IBM的服务器增加了对设备故障当前环境的保存功能,就是保存一份设备故障时的内存 ...

  5. SQL命令导入导出

    利用cmd的操作命令导出,详情如下(备注:方法二是转载网上的教程):1:G:\Oracle\product\10.1.0\Client_1\NETWORK\ADMIN目录下有个tnsname.ora文 ...

  6. java多线程_01_线程的基本概念

    线程:一个程序里边不同的执行路径 例子程序:这个例子程序是一条执行路径.这个程序只有一个分支,就是main方法,叫主线程 public static void main(String[] args) ...

  7. 使用canvas绘制渐变色矩形和使用按键控制人物移动

    使用canvas绘制渐变色矩形和使用按键控制人物移动 1.使用canvas绘制渐变色矩形 效果演示 相关代码: <!DOCTYPE html> <html lang="en ...

  8. C/C++ -- Gui编程 -- Qt库的使用 -- Qt5试用

    1.头文件<QtGui>变成了<QtWidgets> 相应<QtGui/***>变成了<QtWidgets/***> 2.QTextCodec::set ...

  9. springboot-16-springboot中引入xml文件

    参考原文: http://412887952-qq-com.iteye.com/blog/2293846 使用的是在spring中注入一个bean的方式来测试是否成功, 感觉略不实用, 只碰到过一次d ...

  10. [心平气和读经典]The TCP/IP Guide(005)

    The TCP/IP Guide[Page 47, 48, 49] I created The TCP/IP Guide to provide you with an unparalleled bre ...