八、【Python】基础 - 【Python while 循环全解析】:掌握无限循环的艺术

💡📚【Python while 循环全解析】:掌握无限循环的艺术📚💡



目录

一、基本语法

二、示例

三、注意事项

四、嵌套循环与循环控制语句

[五、示例:使用 break 和 continue](#五、示例:使用 break 和 continue)

六、示例:计数器

七、示例:求和

八、示例:用户输入验证


在Python中,while 循环允许你重复执行一段代码,只要给定的条件为真。while 循环是一种预测试循环,这意味着它会先检查条件是否为真,然后才会执行循环体内的代码。如果条件一开始就是假的,那么循环体内的代码一次都不会执行。

一、基本语法

python 复制代码
while condition:
    # 循环体内的代码

这里的 condition 是一个布尔表达式,如果它的值为 True,则执行循环体内的代码。一旦条件变为 False,循环终止。

二、示例

假设我们要计算从1加到10的和,可以使用以下 while 循环:

python 复制代码
count = 1
total = 0

while count <= 10:
    total += count
    count += 1

print("从1加到10的和是:", total)

在这个例子中,count 被初始化为1,total 初始化为0。每次循环迭代时,total 加上 count 的值,然后 count 自增1。当 count 大于10时,循环停止。

三、注意事项

  • 在使用 while 循环时,确保循环中有某种机制使循环条件最终变为假,否则循环可能会无限运行下去,导致程序挂起或崩溃。
  • 循环体内的代码必须正确缩进,通常使用四个空格。

四、嵌套循环与循环控制语句

  • 你可以在 while 循环内嵌套其他循环或控制结构。
  • Python提供了 breakcontinue 控制语句,可以用来改变循环的正常流程。
    • break 语句立即终止循环,跳转到循环之后的代码。
    • continue 语句跳过当前迭代的剩余部分,直接进入下一次迭代。

五、示例:使用 breakcontinue

python 复制代码
i = 0
while i < 10:
    i += 1
    if i == 5:
        continue   # 跳过数字5
    if i > 7:
        break      # 当i大于7时,退出循环
    print(i)

这将输出1, 2, 3, 4, 6, 7,因为当 i 等于5时,continue 语句被触发,跳过了打印操作;当 i 大于7时,break 语句被触发,终止了循环。

六、示例:计数器

这里是一个简单的计数器示例,它会显示从1到5的数字,然后停止:

python 复制代码
counter = 1
while counter <= 5:
    print(counter)
    counter += 1

七、示例:求和

这个示例计算从1到用户指定数字的总和:

python 复制代码
def sum_numbers(n):
    sum = 0
    i = 1
    while i <= n:
        sum += i
        i += 1
    return sum

number = int(input("Enter a number: "))
result = sum_numbers(number)
print(f"The sum from 1 to {number} is {result}.")

八、示例:用户输入验证

这个示例会不断提示用户输入直到他们输入一个有效的整数:

python 复制代码
while True:
    user_input = input("Please enter a positive integer (or 'quit' to exit): ")
    if user_input.lower() == 'quit':
        print("Exiting the program.")
        break
    try:
        number = int(user_input)
        if number > 0:
            print(f"You entered: {number}")
            break
        else:
            print("Number must be positive.")
    except ValueError:
        print("Invalid input. Please enter a positive integer.")

还等什么上手试一下吧.....

相关推荐
2601_962295337 分钟前
使用python实现一个浏览器自动化的脚本
python·脚本·rpa·浏览器自动化·操作
小刘在重生~1 小时前
Java常用类|String类详解 + BigDecimal精准计算(含面试题)
java·开发语言·python
YYYing.1 小时前
【C++进阶系列 (二)】关于线程堆栈的那些事——函数调用过程
开发语言·c++·函数·线程堆栈
邪修king2 小时前
Re:Linux系统篇(十九):进程篇(八): 进程等待详解:wait/waitpid,僵尸进程到底该如何回收
java·开发语言
大汉堡玩测试2 小时前
langfuse测试实战(一): 配置一个简单的项目快速落地
python·测试工具
我爱写代码i2 小时前
SKAPP SK影视反编译详细教程+源码 含苹果端ipa
开发语言·javascript·ecmascript
一位正在转型AI全栈的前端工程师2 小时前
AI 全栈学习之旅 -Week 8:从单 Agent 到多 Agent 协作:LangGraph 实战与记忆持久化
前端·python
长江后浪博客2 小时前
Python + YOLOv8 疲劳驾驶 AI 视觉检测入门:从模型训练到 ONNX 实时摄像头检测完整实战
人工智能·python·yolo·疲劳驾驶检测·onnx·yolov8
吴声子夜歌3 小时前
Java扩展——OkHttp
java·开发语言·okhttp
hhzz3 小时前
【OpenCV 入门到精通 01】认识 OpenCV 与计算机视觉:从零建立全局认知
人工智能·python·opencv·计算机视觉·开源