在Python中,有while和for两种循环,并且都可以带有else子句,都有什么区别呢?
-
while
循环常用于无法提前确定循环次数的场合,当然也可以用于循环可以提前确定的场合。 -
for
循环常用于可以提前确定循环次数的场合,尤其适合用来迭代或遍历可迭代对象中的元素,这也是for循环的本质。
什么时候执行else,什么时候不执行else语句
-
对于带有
else
子句的循环,如果是因为循环条件不成立或序列中的元素已迭代结束而使得循环自然结束,则继续执行else
子句中的代码。 -
如果是因为执行了
break
语句使得循环提前结束,则不再执行else
子句中的代码。简单来说,break
跳出执行的不仅是for
后面的代码,同时会跳出执行else
后面的代码。
for…else…正确代码示例和说明
num = int(input('请输入一个数字:'))
for test in range(2,num):
if num%test == 0:
print('是合数')
break # else是for里面的一部分,break会同时退出
else: