Python提供了for循环和while循环,但没有do..while循环。
1、while循环
1.1 基本语法
while 判断条件:
执行语句……
执行语句可以是单个语句或语句块。
判断条件可以是任何表达式,任何非零、或非空(null)的值均为True;当判断条件假False时,循环结束。
"判断条件"还可以是个常值,表示循环必定成立,循环将会无限的执行下去。
1.2 循环使用else语句
在 python 中,while中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 while不是通过break跳出而中断的)的情况下执行。如:
#!/usr/bin/python
count = 0
while count < 5:
print count, " is less than 5"
count = count + 1
else:
print count, " is not less than 5"
以上实例输出结果为:
0 is less than 5
1 is less than 5
2 is less than 5
3 is less than 5
4 is less than 5
5 is not less than 5
2、for循环
for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
2.1 基本语法
for iterating_var in sequence:
statements(s)
如:
fruits = ['banana', 'apple', 'mango']
for fruit in fruits: #直接通过序列元素
print 'The fruit is:', fruit
fruits = ['banana', 'apple', 'mango']
for index in range(len(fruits)): #通过序列索引
print 'The fruit is:', fruits[index]
# 集合在1到7,左闭右开,默认每次加1
for i in range(1,7):
print i
# 集合在1到10,左闭右开,每次加2
for i in range(1,10,2):
print i
2.2 循环使用else语句
for中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行。
3、循环嵌套
在一个循环体里面嵌入另一个循环。
3.1 while循环嵌套语法
while expression:
while expression:
statement(s)
statement(s)
3.2 for循环嵌套语法
for iterating_var in sequence:
for iterating_var in sequence:
statements(s)
statements(s)
当然,也可以在循环体内嵌入其他的循环体,如在while循环中可嵌入for循环, 反之,可在for循环中嵌入while循环。
以下实例使用了嵌套循环输出2~100之间的素数:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
i = 2
while(i < 100):
j = 2
while(j <= (i/j)):
if not(i%j): break
j = j + 1
if (j > i/j) : print i, " 是素数"
i = i + 1
4、break语句
Python中的break语句,就像在C语言中,打破了最小封闭for或while循环。
break语句用来终止while和for循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。
如果使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。
5、continue语句
Python中的continue语句,跳出本次循环,而break跳出整个循环。
continue 语句跳过当前循环的剩余语句,然后继续进行下一轮循环。
continue语句用在while和for循环中。
6、pass语句
pass是空语句,是为了保持程序结构的完整性,不做任何事情,一般用做占位语句。