循环结构是在给定的判断条件为真(包括非零、非空)时,重复执行某些操作;判断条件为假(包括零、空)时,结束循环。Python语言中的循环结构包括两种语句,分别是while语句和for语句。下面我们来学习这两种循环结构控制语句的用法及案例,还有break和continue两种循环中断语句。
在Python中,while循环常用来解决循环次数不确定的问题。while语句由关键字while、条件表达式、冒号、循环体构成,其基本格式如下:
while 条件表达式:
循环体
在while循环中,当条件表达式为真时执行后面的语句,一直到条件为假时退出循环。
如果第一次条件表达式为假,则while循环将被忽略;如果条件表达式一直为真,则while循环将一直执行。
如果觉得上面语法讲的抽象,那来康康下面几道实例就容易理解了!!!
1、循环输出整数0到5。
number = 0
while number <= 5:
print('当前数字为:',number)
number +=1
2、计算并输出小于等于200的所有正偶数之和。
# 法一
number = 2
sum = 0
while number <= 200:
sum = sum + number
number += 2
print('小于等于200的所有正偶数之和:',sum)
# 法二
number = 1
sum = 0
while number <= 200:
if number % 2 ==0:
sum = sum + number
number += 1
print('小于等于200的所有正偶数之和:',sum)
3、输入公司某商品的订单销售额,并对输入的销售额累加求和,当输入的值小于等于0时终止该操作。
sum = 0
sales = float(input('请输入商品的订单销售额:'))
while sales > 0:
sum = sum + sales
sales = float(input('请输入商品的订单销售额:'))
print('商品销售总额:',sum)
在while语句的循环体中要包含改变测试条件的语句,以保证循环能够结束,避免死循环的出现。while语句与if语句有相同的条件测试语句:如果条件为真,就执行循环体;如果条件为假,则终止循环。下面是while…else具体语法格式:
while 条件表达式:
语句1
else:
语句2
4、循环输出整数0到5,当值大于5时用else退出循环。
number = 0
while number <= 5:
print('当前数字为:',number)
number +=1
else:
print('当前数字大于等于5,该数字为:',number)
死循环也称为无限循环,是指这个循环将一直执行下去。在使用while语句构造循环语句时,最容易出现的问题是测试条件永远为真,导致死循环。要避免编写无限循环,务必对每个while循环进行测试,确保它按预期结果结束。
如果程序陷入无限循环,可按 Ctrl+C 中断死循环,或者可关闭显示程序输出的终端窗口。
5、下面演示一个while无限循环案例
x = 1
while x <= 5:
print(x)
在上述代码中,因为循环条件变量x的值永远为1,所以该条件永远为true,造成循环无限执行下去,就陷入了死循环。
for语句通过遍历一个序列(字符串、列表、元组)或可迭代对象中的每个元素建立循环。
其基本语法格式如下:
for 变量 in 序列或可迭代对象:
循环体
遍历for语句中的序列或可迭代对象,每经过一次循环,循环变量就会得到序列或可迭代对象中的一个值,可以在循环体中处理它。在一般情况下,当遍历对象中的值全部用完时,就会自动退出循环。
6、下面使用for循环来打印不同的颜色。
colors = ['blue','pink','green','red']
for color in colors:
print(color)
在Python语言中,还可以通过序列索引迭代的方式实现循环功能。在具体实现时,可以借助于内置函数 range() 实现。下面是 range() 的语法格式:
range(start,stop[,step])
Explain:
7、下面来康康 range() 的四个小实例
for i in range(10):
print(i)
for i in range(0,10):
print(i,end=' ')
for i in range(0,20,2):
print(i,end=' ')
colors = ['blue','pink','green','red']
for i in range(len(colors)):
print(colors[i],end=' ')
基本语法格式:
for 变量 in 序列或可迭代对象:
语句体1
else:
语句体2
8、有一个列表 sales = [5000,3000,8000,10600,6000,5000]。该列表中的元素依次表示某产品1-6月的销售额。请用 for 循环遍历该列表,找到第一个销售额大于等于6000 的元素,并打印该元素的值。如未找到,则输出“未找到”。
sales = [5000,3000,8000,10600,6000,5000]
for i in sales:
if i >= 6000:
print('第一个销售额大于等于6000的元素:',i)
break
else:
print('未找到!')
break语句可以用在 while 和 for 循环中。在循环进行过程中,如果某个条件被满足,则可以通过 break 语句立即终止本层循环;如果 break 语句有两层循环嵌套的内层循环中,则只终止内层循环,进入外层循环的下一条语句继续执行。
continue语句也可以用在 while 和 for 循环中。在循环体执行过程中,如遇到 continue 语句,程序会跳出本次循环体剩余语句,回到循环开始的地方重新判断是否进入下一次循环。
9、下面两段代码有助于我们区别 break 和 continue 的语句,注意观察运行结果。
# 使用 break 语句
colors = ['blue','pink','green','red','black','white']
for color in colors:
if color == 'red':
break
print(color)
# 使用 continue 语句
colors = ['blue','pink','green','red','black','white']
for color in colors:
if color == 'red':
continue
print(color)