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

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

相关推荐
沪漂阿龙7 分钟前
Embedding:文本怎么变成向量?语义检索为什么能工作?
人工智能·python·embedding
青春喂了后端7 分钟前
Go Sidecar Status 性能优化
开发语言·性能优化·golang
摇滚侠9 分钟前
MyBatis 入门到项目实战 MyBatis 分页插件 65-66
java·开发语言·sql·mybatis
生信碱移14 分钟前
Vscode 连接 ipynb 选择内核无法自动显示 conda 环境对应的 python
服务器·人工智能·经验分享·vscode·python
CHHH_HHH15 分钟前
【C++】哈希表原理与实战:从冲突解决到性能优化
开发语言·数据结构·c++·学习·算法·哈希算法·散列表
Cloud_Shy61815 分钟前
解读《Effective Python 3rd Edition》:从练气到老魔(第七章 Item 48 - 50)
开发语言·人工智能·笔记·python·microsoft·学习方法
喵叔哟16 分钟前
Week 3 --Day 4:生产级部署
python·langchain
huzhongqiang21 分钟前
Python实现单例装饰器:支持持久序列化
python
winfredzhang21 分钟前
用 wxPython + 通义千问 VL 打造一款“批量人物图像识别“桌面应用
python·sqlite·wxpython·qwen 3.7max·分析照片
codeaideaai33 分钟前
使用UV创建python项目
python·fastapi·uv