赞
踩
前两章中,我们跟着海绵宝宝的故事,掌握了 while
循环和 for
循环,这两种不同的循环模式。while
循环和 for
循环都需要有 循环体 和 缩进,我们来复习一下它俩的语法规则:
while
循环与 for
循环辨析学到这里,对于 while
循环与 for
循环要怎么用,你已经相当熟悉啦,它们都能满足将某件事重复多次的需求。下面这两段代码都能将“美味蟹黄堡”打印 3 遍,只是 for
循环代码要更简洁:
- # while 循环
- i = 0
- while i < 3:
- print('美味蟹黄堡')
- i += 1 # 还记得 i += 1 是 i = i + 1 的缩写吗?
-
- # for 循环
- for i in range(3):
- print('美味蟹黄堡')
这么一看,while
循环和 for
循环的功能似乎没有差异呀?那 Python 中何必还要有两种不同的循环语句呢?
要回答这个问题,首先要理清楚两种循环的不同之处,二者最大的区别在于 循环次数是否确定,我们结合两种循环的终止条件来理解一下。
先来看 for
循环。for
循环的执行逻辑很好理解,遍历序列,遍历结束后循环终止。所以说,for
循环的循环次数是确定的,序列中有多少个元素,循环就执行多少次:
- # 循环次数确定
- names = ['海绵宝宝', '派大星', '泡芙老师', '珊迪', '蟹老板']
- for i in names:
- print(i)
而 while
循环是在条件不满足时终止循环,我们不需要给出一个确定的循环次数。所以,如果你也不确定要让 Python 把某件事重复多少遍,那用 while
循环就刚好合适:
- # 循环次数不确定
- name = ''
- while name != '海绵宝宝':
- name = input('猜猜我是谁?')
大多数情况下,两种循环是通用的,但像上面这个例子一样的猜名字、猜数字问题,只能通过 while
循环来实现。
总结一下,while
循环和 for
循环有着完全不同的循环模式。写 for
循环时,我们无需额外去思考循环的终止条件,只需要提供待遍历的数据;写 while
循环则不一样,无需关心循环的执行次数,只需要提供清晰有效的循环条件。
两种循环在大多数情况下通用,但各自的特点决定了它们更适合用来解决两类不同的循环问题:
仿照课程中的例子,我们给海绵宝宝写一个工作提醒器吧。要求:
answer
获取用户输入;想想看,哪种循环适合解决这个问题呢?
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。