ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Theory: Loop control statements(理论:循环控制语句)

2022-02-04 23:59:17  阅读:197  来源: 互联网

标签:control statements Theory pet dog break pancakes 循环 print


循环控制语句嵌套在循环内,旨在改变它们的典型行为。在本主题中,我们将了解它们的工作原理以及它们的用途。

怎么使用break

break语句用于终止任何类型的循环(即和for 循环while )。可以说break “跳出”它所在的循环。让我们看一个小例子:

pets = ['dog', 'cat', 'parrot']
for pet in pets:
    print(pet)
    if pet == 'cat':
        break

我们想在最后一次迭代之前停止循环。为此,我们引入了应停止循环的条件。输出如下:

dog
cat

小心你放的地方print()。如果你把它放在循环的末尾,输出将只返回第一个值——'dog'。发生这种情况是因为break立即退出循环。

通常,break用于停止while像这样的无限循环:

count = 0
while True:
    print("I am Infinite Loop")
    count += 1
    if count == 13:
        break

如何使用continue

continue运算符也很常用。如果您的条件为真,您可以停止迭代并返回到循环的开头(即跳转到循环的顶部并使用下一个值继续执行)。看下面的例子:

pets = ['dog', 'cat', 'parrot']
for pet in pets:
    if pet == 'dog':
        continue
    print(pet)

输出将包含除第一个值('dog')之外的所有值,因为它满足条件:

cat
parrot

因此,循环只是跳过一个值并继续运行。

一个细微的差别值得一提:continue运算符应该适度使用。有时您可以通过简单地使用带有反转条件的if语句来缩短代码:

pets = ['dog', 'cat', 'parrot']
for pet in pets:
    if pet != 'dog':
        print(pet)

在这种情况下,输出将保持不变:

cat
parrot

循环 e​​lse 子句

如果循环没有遇到 break 语句,则可以使用else 子句指定循环后要执行的代码块。

pets = ['dog', 'cat', 'parrot']
for pet in pets:
    print(pet)
else:
    print('We need a turtle!')

所以在循环体之后,else语句将执行:

dog
cat
parrot
We need a turtle!

重要的是,else当且仅当循环正常退出(不点击break)时,循环才会运行。此外,它在循环从未执行时运行(例如,while循环的条件从一开始就为假)。考虑一个例子:

pancakes = 2
while pancakes > 0:
    print("I'm the happiest human being in the world!")
    pancakes -= 1
    if pancakes == 0:
        print("Now I have no pancakes!")
        break
else:
    print("No pancakes...")

当我们第一次运行代码时,我们会得到这个输出:

I'm the happiest human being in the world!
I'm the happiest human being in the world!
Now I have no pancakes!

第二次执行代码片段(当条件不满足时,pancakes = 0)将结束另一条消息:

No pancakes...

概括

总而言之,循环控制语句代表了一个改变循环工作方式的有用工具。break您可以使用、continue和运算符引入额外的条件else。此外,它们允许您在成功执行代码后打印一条消息,跳过预先选择的一组值,甚至终止无限循环。明智地使用它们,它们会创造奇迹。

标签:control,statements,Theory,pet,dog,break,pancakes,循环,print
来源: https://blog.csdn.net/weixin_38114487/article/details/122787057

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有