3.2 循环语句
在流程控制中介绍了选择结构,接下来了解循环结构的使用。所谓“循环”(Loop),是指根据条件运算反复执行循环体内的语句,只要进入循环就会再一次检查条件运算,只要条件符合就会继续往下执行,直到条件运算不符合才会跳离循环体,包含:
● for/in循环,可计次循环,用来控制循环重复执行的次数。
● While循环,符合指定的条件就不断地重复执行。
3.2.1 for循环
使用for/in循环时,必须在循环中加入计数器,用来控制循环执行的次数,语法如下:
for item in sequence/iterabl:
#循环满足条件时执行的代码
else:
#循环不满足条件时执行的代码
■ item:代表的是元组(tuple)和列表(list)的项目,通常指计数循环的计数器。
■ sequence/iterable:除了不能更改顺序的序列值外,还包含可顺序重复的对象,可以搭配内置函数range()来使用。
一般来说,for/in循环要有计数器来计算循环执行的次数,所以计数器要有起始值和终止值。此外,计数器还要有增减值,如果没有特别明确,循环每执行一次就自动累加1。Python提供range()函数来搭配,语法如下:
range([start],stop,[, step])
■ start:起始值,默认为0,参数值可以省略。
■ stop:停止条件,必要参数不可省略。
■ step:计数器的增减值,默认值为1
sum = 0 #存储累加的结果
# 进入for/in循环
for count in range(11): #0~10
sum += count #将数值累加
print('累加值:', sum) #输出累加的结果
运行程序,输出结果为:
累加值: 55
3.2.2 while循环
while循环会根据条件值不断地执行,直到条件值不符合为止。相对于for/in循环,while循环不清楚循环执行的次数,或者数据没有次序性时使用while循环会比较恰当。
■ 条件表达式可以搭配比较运算符或逻辑运算符
■ else语句是一条可以弹性选择的语句。当条件运算不成立时,会被执行。
注意:使用while循环时,如果条件运算设置不当,就会形成无限循环,除非强行中断程序才会停止。
当然,while循环也可以加入计数器当作次数可数的循环,使用下面的例子说明。
■ while循环用变量sum存储累加的结果,count设成计数器来获取循环执行的次数。
■ 为了获取循环次数,循环每执行一次就将count值加1。
sum = 0 #存储累加的结果
count = 1 #计数器
# 进入while循环
while count <= 10: #1,3,5 ~ 99
sum += count #将数值累加
count += 1 #累加计数器
print('1+2+3+..+ 10 累加的结果为:', sum) #输出累加的结果
运行程序,结果为:
1+2+3+…+ 10 累加的结果为: 55
i = 1
sum = 0
while i <= 100:
if i%2 == 0:
sum = sum + i
i+=1
print("1~100的偶数的累积和为:%d"%sum)
运行程序,结果为
1~100之间的偶数的累积和为:2550