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

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

相关推荐
网易独家音乐人Mike Zhou9 分钟前
【卡尔曼滤波】数据预测Prediction观测器的理论推导及应用 C语言、Python实现(Kalman Filter)
c语言·python·单片机·物联网·算法·嵌入式·iot
安静读书11 分钟前
Python解析视频FPS(帧率)、分辨率信息
python·opencv·音视频
----云烟----2 小时前
QT中QString类的各种使用
开发语言·qt
lsx2024062 小时前
SQL SELECT 语句:基础与进阶应用
开发语言
小二·2 小时前
java基础面试题笔记(基础篇)
java·笔记·python
开心工作室_kaic2 小时前
ssm161基于web的资源共享平台的共享与开发+jsp(论文+源码)_kaic
java·开发语言·前端
向宇it2 小时前
【unity小技巧】unity 什么是反射?反射的作用?反射的使用场景?反射的缺点?常用的反射操作?反射常见示例
开发语言·游戏·unity·c#·游戏引擎
武子康2 小时前
Java-06 深入浅出 MyBatis - 一对一模型 SqlMapConfig 与 Mapper 详细讲解测试
java·开发语言·数据仓库·sql·mybatis·springboot·springcloud
转世成为计算机大神3 小时前
易考八股文之Java中的设计模式?
java·开发语言·设计模式
宅小海3 小时前
scala String
大数据·开发语言·scala