循环用户重复执行一些程序块。从上一讲的选择结构,我们已经看到了如何用缩进来表示程序块的隶属关系。循环也会用到类似的写法。
for循环
for循环需要预先设定好循环的次数(n),然后执行隶属于for的语句n次。
基本构造是:
for 元素 in 序列:
statenent(#statenent是声明的意思)
举例来说,我们编辑一个叫forDemo.py的文件:
for a in [3,4,4,'life']:
print a
上面这个循环就是每次从表[3,4,4,'life']
中取出一个元素(回忆:表示一种序列),然后将这个元素赋值给a
,之后执行隶属于for
的操作(print
)。
这里介绍一个新的python函数range(),来帮助你建立表。
idx = range(5)
print idx
可以看到idx是[0,1,2,3,4]
这个函数的功能是新建一个表。这个表的元素都是整数。从0开始,下一个元素比前一个元素大1,直到函数中所写的上限(但不包括上限本身)。
(关于range(),还有丰富用法,有兴趣可以查阅。python3.0中,range()用法有改变。)
举例:
for a in range(10):
print a**2
while循环:
while的用法是:
while 条件:
statenent
while会不停地循环执行隶属于它的语句,直到条件为假(False)
举例:
while i < 10:
print i
i = i + 1
中断循环:
continue #在循环的某一次执行中,如果遇到continue,那么跳过这一次的执行,进行下一次的操作
break #停止执行整个循环
for i in range():
if i == 2:
continue
print i
当循环执行到i = 2的时候,if条件成立,触发continue,跳过本次执行(不执行print),继续进行下一次执行(i = 3)。所以,这里打印的结果为:
0
1
3
4
5
6
7
8
9
for i in range(10):
if i == 2:
break
print i
当循环执行到i = 2的时候,if条件成立,触发break,整个循环停止。这里执行的结果为:
0
1
总结:
range() #新建表
for 元素 in 序列: #for循环写法
while 条件: #while循环写法
continue #跳过循环
break #停止循环
网友评论