如何在 Python 中使用 while True?2025年1月5日 | 阅读 5 分钟 引言Python 以其简洁和清晰而闻名,提供了多种控制程序流程的结构。另一个值得注意的结构是 'while' 循环,它允许无限重复一段代码,直到某个条件变为真。但有时您可能需要循环无限运行,直到某个条件被触发。这时,'while True' 结构就派上用场了,它提供了一种通过中断来确保持续循环直到完成的替代方法。在本文中,我们将探讨 Python 中的 'while True' 以及如何在不同情况下适当地使用它。 'while True' 的基础知识'while True' 循环是一种条件无限重复的结构。这意味着该循环内的代码将一直运行,直到它结束或终止循环。循环必须有一个退出机制来终止它,否则程序将永远运行。让我们通过一个简单的例子来深入了解 'while True' 的基本用法。 输出 Enter a number (type 'exit' to end): 2 The square of 2.0 is 4.0 Enter a number (type 'exit' to end): 4 The square of 4.0 is 16.0 Enter a number (type 'exit' to end): 5 The square of 5.0 is 25.0 Enter a number (type 'exit' to end): 78 The square of 78.0 is 6084.0 Enter a number (type 'exit' to end): 25 The square of 25.0 is 625.0 Enter a number (type 'exit' to end): exit 说明 在此示例中,while True 循环会一直持续,直到用户输入 'exit'。它会不断要求用户输入任何数字;每当用户执行此操作时,它都会计算并打印出其平方。通过 break 语句,只有当用户直接输入“exit”时,循环才会终止。 创建菜单驱动程序'while True' 最常见的用例之一是使用 **通过用户从列表中选择的选项提供的用户界面** 来构建菜单驱动的程序。循环会一直重复,直到用户选择一个终止程序的选项。以下是一个简单的菜单驱动程序的示例: 输出 1. Print Hello 2. Print World 3. Exit Enter your choice: 1 Hello 1. Print Hello 2. Print World 3. Exit Enter your choice: 2 World 1. Print Hello 2. Print World 3. Exit Enter your choice: 3 Exiting the program. 说明 在这种情况下,'while True' 循环会显示一个菜单板,然后获取用户输入,该输入会被考虑在内,并根据用户的选择执行相应的操作。循环一直运行,直到用户选择“Exit”(退出)并从中退出,从而终止整个程序。 实现倒计时器'while True' 命令的另一个有趣的用法是关于倒计时器。**在这种情况下,循环会一直运行,直到计时器变量达到零**。让我们创建一个简单的倒计时器程序: 输出 Enter countdown duration in seconds: 5 Time remaining: 5seconds Time remaining: 4seconds Time remaining: 3seconds Time remaining: 2seconds Time remaining: 1seconds Time's up! 说明 在这种情况下,while True 循环会不断打印剩余的倒计时秒数,并只要 timer 大于零就重复此操作。**'time.sleep(1)'** 函数有助于在循环的每次迭代之间添加一秒的延迟。 处理中断和异常在使用像 'while True' 这样的无限循环时,可能出现的一个问题是如何以得体的方式处理中断和异常。但是,确保循环可以在没有意外副作用的情况下终止至关重要。一种常见的方法是使用 try-except 块来捕获异常并适当地处理它们。 输出 Enter a number: 10 Result: 1.0 Enter a number: 0 Cannot divide by zero. Enter a number: 12 Result: 0.8333333333333334 说明 在这种情况下,'while True' 循环接受用户输入进行计算并打印出结果。该循环旨在处理三种类型的异常:**ValueError**(无效输入)、**ZeroDivisionException**(除以零)和 **KeyboardInterrupt**(用户中断,Ctrl+C)。如果发生键盘中断,break 语句会退出循环。 实现有限状态机**有限状态机 (FSM) 是一种用于设计和描述具有有限状态的系统行为的合适计算模型**。可以使用 Python 中的 while True 结构开发一个简单的有限状态机。让我们看一个交通灯模拟的例子: 输出 Green light. Proceed with caution Yellow light. Prepare to stop Red light. Stop 说明 此示例显示了代表正在运行的交通灯模拟的 while True 循环。程序会跳转到各种状态(“绿色”、“黄色”、“红色”),并为每种状态发出消息。'time.sleep' 函数用于模拟每个交通灯状态的持续时间。 结论在 Python 中,'while True' 结构是构建无限循环的有效方法,这些循环仅在终止时停止执行。掌握 'while True' 的用法可以实现多种功能,包括创建菜单驱动的程序、指定倒计时器、处理中断和异常,以及高效轮询和构建简单的有限状态机。但是,提供 break 语句或异常管理机制至关重要,这样程序才不会卡在无限循环中。与任何编程结构一样,使用 while True 也应经过深思熟虑的设计,并需要考虑您应用程序的特殊需求。 |
?图像尺寸简介 在我们讨论代码之前,让我们首先定义图像“尺寸”对我们意味着什么。简而言之,图像是一组像素,其中每个像素表示颜色的一小部分。图像的宽度是……
7 分钟阅读
引言:理解 Python 中的内存利用率主要取决于了解字典的大小,尤其是在处理大型数据集、API 或 JSON 对象时。可以使用 Python 函数(如 sys.getsizeof() 和 __sizeof__())以字节为单位确定字典的内存大小,这有助于...
阅读 3 分钟
数据值以键值对的形式存储在字典中。在本教程中,我们将学习如何将字典写入文件。目前,我们只能将字符串写入文件。要写入字典对象,我们必须对其进行序列化或使用 JSON 来...
阅读 3 分钟
JAX Python 库简介 JAX 是 Python 中用于快速数值计算的工具箱。通过将 Python 函数转换为高效机器代码,`jit} 函数促进了即时 (JIT) 编译并允许自动微分——这对于机器学习和优化等任务很有用。它的能力是...
阅读 3 分钟
在接下来的教程中,我们将通过一个例子来学习 Python 的 Mizuna 库。理解 Python 的 Mizuna 库 Mizuna 是一个不太知名的 Python 模块,它简化了创建和与机器学习模型进行交互的过程。它专注于优化通用...
5 分钟阅读
人工智能 (AI) 这一计算机科学新学科旨在开发能够复制人类智能的机器,执行传统上涉及人类理解、学习和决策的任务。如果它们还具有处理能力,它们将在具有挑战性的环境中感知事物,并进行更改以适应...
阅读 15 分钟
Jython 简介 它总是让我想起那句话:“多功能性是程序员语言最好的原因。” 程序员一直在寻找不仅能让他们快速完成工作,还能轻松集成……
阅读 8 分钟
简介 在广阔的编程和脚本语言领域,Python 和 Bash 作为强大的工具脱颖而出,每种工具都有其独特的优点和用途。虽然两者都在自动化和脚本领域广泛使用,但它们满足不同的需求并展现出独特的特性....
阅读 4 分钟
您是否曾因CodeChef恶毒的编译器而绝望地大喊,然后将额头砸在键盘上,喃喃地说:“EOF错误?”朋友,快过来加入俱乐部吧!但是,亲爱的读者,不要害怕!本文是您的EOF杀手锏和备忘单……
5 分钟阅读
图表坐标轴外框介绍 Matplotlib 库中,包围数据区域的边界或边缘被称为外框。这些外框环绕着图表的边缘,界定了显示数据点的区域。一个图表有...
阅读9分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India