循环分为两种。一种是计数循环,即重复一定次数的循环。另一种重复直至发生某种情况时结束循环,称为条件循环。
一、计数循环
计数循环也叫for循环。新建文件键入:
for looper in [1,2,3,4,5]:
print "Hello"
会看到这样的结果:
即 looper的值从1开始,对应列表中的每一个值,这个循环会把下一个指令块中所有工作完成一次(此例具体指打印Hello)。每次执行循环,变量looper会赋为这个列表中的下一个值。
当然为了验证这一说法,可以把变量的值依次打印出来,键入:
for looper in [1,2,3,4,5]:
print looper
*倘若进入无限循环状态,按 CTRL + C 即可跳出循环
1、使用循环计数
现在用循环制作一个乘法表试试,键入:
for i in [1,2,3,4,5,6,7,8,9]:
for j in[1,2,3,4,5,6,7,8,9]:
print i,"*",j,"=",i*j
部分效果图:
2、range的用法( )
在上边的例子中,我们循环的次数较少,可以将循环次数逐个写出来。假如希望循环100次或者1000次呢?这就得键入很多数!这时候range( )函数就十分重要了。你只用输入起始值和结束值,它就可以为你创建这二者之间的所有值。
简言之,range( )函数可以创建一个列表,其中包含某个范围内的数。
因此上例可以改为:
for i in range(1,9):
for j in range(1,9):
print i,"*",j,"=",i*j
运行结果基本相同,但你会发现,乘法表到8x8便结束了,为什么没有9呢?
恩,这就是range( )函数的做法,提供一个数字列表,从第一个数开始,在给定的最后一个数之前结束。只需将range(1,9)中的数值9改成10便可正常运行出乘法表。
顺便提一句,range(1,9)也可以简写为range(9),但是默认从0开始执行。
3、循环字符串
挺好玩的 >_<:
for ymy in "Hi LSM":
print ymy
4、按步长计数
(1)、正向循环
如下例:
for i in range(1,10,2):
print i
这里range( )函数增加了第3和个参数2。即循环按步长2计数。
(2)、反向循环
这样:
for i in range(10,1,-1):
print i
range( )函数中的第3个参数是负数时,循环会向下计数。
利用这一点可以写一个倒计时定时器程序:
import time
for i in range(10,0,-1):
print i
time.sleep(1)
print "BLAST oFF!"
二、条件循环
条件循环也就是while( )循环。键入:
print "Type 3 to continue,anything else to quit."
someInput = raw_input()
while someInput == '3':
print "Thank you for the 3.Very kind of you."
print "Type 3 to continue,anything else to quit."
someInput = raw_input()
print "That's not 3.so I'm quit now."
三、continue和break
continue:直接跳到循环的下一次迭代
break:完全终止循环