Theory: Loop control statements(理论:循环控制语句)
2022/2/5 6:15:13
本文主要是介绍Theory: Loop control statements(理论:循环控制语句),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
循环控制语句嵌套在循环内,旨在改变它们的典型行为。在本主题中,我们将了解它们的工作原理以及它们的用途。
怎么使用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
循环 else 子句
如果循环没有遇到 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
。此外,它们允许您在成功执行代码后打印一条消息,跳过预先选择的一组值,甚至终止无限循环。明智地使用它们,它们会创造奇迹。
这篇关于Theory: Loop control statements(理论:循环控制语句)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15PingCAP 黄东旭参与 CCF 秀湖会议,共探开源教育未来
- 2024-05-13PingCAP 戴涛:构建面向未来的金融核心系统
- 2024-05-09flutter3.x_macos桌面os实战
- 2024-05-09Rust中的并发性:Sync 和 Send Traits
- 2024-05-08使用Ollama和OpenWebUI在CPU上玩转Meta Llama3-8B
- 2024-05-08完工标准(DoD)与验收条件(AC)究竟有什么不同?
- 2024-05-084万 star 的 NocoDB 在 sealos 上一键起,轻松把数据库编程智能表格
- 2024-05-08Mac 版Stable Diffusion WebUI的安装
- 2024-05-08解锁CodeGeeX智能问答中3项独有的隐藏技能
- 2024-05-08RAG算法优化+新增代码仓库支持,CodeGeeX的@repo功能效果提升