循环语句允许我们执行一个语句或语句组多次,下面是在大多数编程语言中的循环语句的一般形式:
Python 提供了 for 循环和 while 循环(在 Python 中没有 do..while 循环):
循环控制语句可以更改语句执行的顺序。Python支持以下循环控制语句:
1.while循环
Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:
while 判断条件(condition): 执行语句(statements)……
执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。
当判断条件假 false 时,循环结束。
执行流程图如下:
Gif 演示 Python while 语句执行过程
复杂一点:
num = 0 nums = 10 while num <= nums: print("num的值为",num) num += 1
while 语句时还有另外两个重要的命令 continue,break 来跳过循环,continue 用于跳过该次循环,break 则是用于退出循环,此外"判断条件"还可以是个常值,表示循环必定成立,具体用法如下:
var1 = 0 while 1 : print("var1=",var1) var1 += 1 if var1 == 10: break
无限循环var1 = 0
while 1 : print("var1=",var1) var1 += 1
结果:
var1= 49982
var1= 49983
var1= 49984
var1= 49985
var1= 49986
var1= 49987
Process finished with exit code -1
如果不点击结束,否则会一直执行下去。
循环使用 else 语句
在 python 中,while … else 在循环条件为 false 时执行 else 语句块:
var1 = 0 var2 = 5 while var1 <= var2 : print("var1=",var1) var1 += 1 else: print("执行结束!") -----结果------- var1= 0 var1= 1 var1= 2 var1= 3 var1= 4 var1= 5 执行结束!
简单语句组
类似 if 语句的语法,如果你的 while 循环体中只有一条语句,你可以将该语句与while写在同一行中, 如下所示:
var1 = 0 var2 = 5 while (var1 <= var2): print("中国加油!中国必胜!")
2.for循环
for循环可以遍历任何序列的项目,如一个列表或者一个字符串
for循环的语法格式如下:
for iterating_var in sequence: statements(s)
流程图:
string = "MYQDX" for str in string: print("当前字母:",str) # 当前字母: M # 当前字母: Y # 当前字母: Q # 当前字母: D # 当前字母: X strings = ['蜘蛛','猴子','大象','蚂蚁','蟑螂'] for str in strings: print("当前的动物为:",str) # 当前的动物为: 蜘蛛 # 当前的动物为: 猴子 # 当前的动物为: 大象 # 当前的动物为: 蚂蚁 # 当前的动物为: 蟑螂
通过序列索引迭代
另外一种执行循环的遍历方式是通过索引,如下实例:
strings = ['蜘蛛','猴子','大象','蚂蚁','蟑螂'] for str in range(len(strings)): print("当前的动物为:",strings[str]) # 当前的动物为: 蜘蛛 # 当前的动物为: 猴子 # 当前的动物为: 大象 # 当前的动物为: 蚂蚁 # 当前的动物为: 蟑螂
循环使用 else 语句
var1 = 0 var2 = 10 var3 = 8 for num in range(var1,var2): if var1 <= var3 and var2 >= var3: if var1 == var3: print("var3的值在var1和var2之间,且值为",var1) var1 += 1 else: print("程序结束!") -----结果----- var3的值在var1和var2之间,且值为 8 程序结束!
3.循环嵌套
Python 语言允许在一个循环体里面嵌入另一个循环。
for 循环嵌套语法:
for iterating_var in sequence: for iterating_var in sequence: statements(s) statements(s)
因此,可以在循环体内嵌入其他的循环体,如在while循环中可以嵌入for循环, 反之,也可以在for循环中嵌入while循环。
实例:
strings = ['北京','南京','','东京'] for string in strings: for str in string: print("strings中的文字为:",str) # strings中的文字为: 北 # strings中的文字为: 京 # strings中的文字为: 南 # strings中的文字为: 京 # strings中的文字为: 东 # strings中的文字为: 京