八、【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.")

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

相关推荐
jieyucx5 小时前
Go语言深度解剖:Map扩容机制全解析(增量扩容+等量扩容+渐进式迁移)
开发语言·后端·golang·map·扩容策略
YJlio6 小时前
7.4.5 Windows 11 企业网络连接与网络重置实战:远程访问、本地策略与故障恢复
前端·chrome·windows·python·edge·机器人·django
脏脏a6 小时前
【C++模版】泛型编程:代码复用的终极利器
开发语言·c++·c++模版
island13146 小时前
【C++仿Muduo库#3】Server 服务器模块实现上
服务器·开发语言·c++
散峰而望6 小时前
【算法竞赛】C/C++ 的输入输出你真的玩会了吗?
c语言·开发语言·数据结构·c++·算法·github
小龙报6 小时前
【C语言】内存里的 “数字变形记”:整数三码、大小端与浮点数存储真相
c语言·开发语言·c++·创业创新·学习方法·visual studio
深耕AI6 小时前
【VS Code避坑指南】点击Python图标提示“没有Python环境”,选择安装uv后这堆输出到底是什么意思?
开发语言·python·uv
第一程序员6 小时前
Rust生命周期管理实战指南:从困惑到掌握
python·github
2301_789015626 小时前
C++:继承
c语言·开发语言·c++
程序员威哥6 小时前
实战!Python爬京东商品评论:从采集到情感分析+词云可视化,新手30分钟跑通
开发语言·爬虫·python·scrapy