python中 while循环

本文深入探讨Python中while循环的基础语法及应用技巧,通过具体案例解析continue与break的作用,并设计了一个猜数字游戏来展示while循环在实际项目中的运用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

while循环

相比于for循环,while循环就显得简单很多了,先看一下定义格式:

while 条件:
	条件成立后需要执行的代码块..
	...

简单的案例,从1加到100:

i = 1
temp = 0
while i<= 100:
	temp += i
	i += 1
print(temp)

执行结果:

5050

while 循环只要条件成立就可以一直执行while下缩进的代码块,如果条件设置为 True 并且没有退出的条件, 程序便会陷入死循环,除非必要,否则我们应该避免程序陷入死循环....

有时候可能是没有办法判断判断循环的次数,比如玩游戏的时候需要判断玩家操作出错,或者血条没有血才判断游戏结束,退出循环

while循环还有两个非常重要的命令,continue 和 break。 continue用与跳过循环中的这次,循环本身不结束,只是跳过执行到continue的这一次循环,而break是直接退出循环。

continue:

i = 0
temp = 0

while i<100:
    i += 1
    if i == 50:
        continue  # 当i加到50的时候跳过 continue 后面所有的代码块,不在执行。进入下一次循环.
    temp += i

print(temp)

结果就是跳过加50的一次:

5000

break:

i = 0
temp = 0

while i < 100:
    i += 1
    if i == 51:
        break # 当i加到51的时候退出整个循环
    temp += i

print(temp)

结果就是从1加到50:

1275
来做一个猜数字的小游戏:
# -*- coding:gbk -*-
import sys
from random import randint  # 导入随机整数模块

print("*" * 60)
print("猜数字游戏v1.0".center(60))  # 让字符串居中在60个字符中
while True:
    randnum = input("请输入一个最大范围值:")
    randnum = randint(0,int(randnum))  # 随进产生一个从0到50之间的整数
    print("数字随机生成成功!")
    while True:

        guess_num_str = input("猜猜数字是多少?:")
        guess_num = int(guess_num_str)
        if guess_num > randnum:
            print("猜大了")
        elif guess_num < randnum:
            print("猜小了")
        elif guess_num == randnum:
            print("恭喜你,答对了!!!")
            quit = input("再来一局?(y/n):")
            if quit.lower() == "y":
                break  # 退出内层循环,执行外层循环
            elif quit.lower() == "n":
                sys.exit()  

执行效果:

************************************************************
                         猜数字游戏v1.0
请输入一个最大范围值:60
数字随机生成成功!
猜猜数字是多少?:30
猜小了
猜猜数字是多少?:45
猜大了
猜猜数字是多少?:40
猜大了
猜猜数字是多少?:35
猜小了
猜猜数字是多少?:38
恭喜你,答对了!!!
再来一局?(y/n):y
请输入一个最大范围值:70
数字随机生成成功!
猜猜数字是多少?:35
猜大了
猜猜数字是多少?:18
猜小了
猜猜数字是多少?:25
猜小了
猜猜数字是多少?:28
猜小了
猜猜数字是多少?:29
猜小了
猜猜数字是多少?:30
猜小了
猜猜数字是多少?:33
恭喜你,答对了!!!
再来一局?(y/n):n

D:\Program Files\excrsice>

### Python 中 `while` 循环的用法及示例 在 Python 中,`while` 循环用于根据特定条件重复执行代码块。循环会在条件为 `True` 时持续运行,当条件变为 `False` 时停止。以下是关于 `while` 循环的基本语法和使用方法[^3]: ```python while expression: statement(s) ``` - **expression**:这是一个布尔表达式,用于判断循环是否应该继续执行。如果表达式的结果为 `True`,则执行循环体内的语句;如果结果为 `False`,则停止循环。 - **statement(s)**:这是循环体,即当 `expression` 为 `True` 时将反复执行的一段或多段代码。 #### 示例 1: 使用 `while` 循环打印数字 以下是一个简单的 `while` 循环示例,用于打印从 1 到 5 的数字[^2]: ```python i = 1 while i <= 5: print(i) i += 1 else: print("循环已完成") ``` 在这个例子中,`while` 循环会一直执行,直到变量 `i` 超过 5。当循环结束时,`else` 子句中的代码会被执行。 #### 示例 2: 计算阶乘 下面是一个使用 `while` 循环计算阶乘的示例[^1]: ```python def factorial(n): result = 1 while n > 1: result *= n n -= 1 return result print(factorial(5)) # 输出 120 ``` 在此示例中,`while` 循环被用来逐步减少 `n` 的值,并将其与当前结果相乘,直到 `n` 变为 1。 #### 示例 3: 避免死循环 在使用 `while` 循环时,必须确保循环条件最终会变为 `False`,否则会导致死循环。例如,以下代码将导致无限循环[^4]: ```python # 错误示例:无限循环 i = 1 while i > 0: print(i) ``` 为了避免这种情况,需要确保循环条件能够正确更新并最终终止。 #### 示例 4: 使用 `break` 和 `continue` `break` 和 `continue` 是控制循环流程的重要工具。`break` 用于立即退出循环,而 `continue` 用于跳过当前迭代并进入下一次循环[^4]。 ```python # 使用 break i = 0 while i < 10: if i == 5: break print(i) i += 1 # 使用 continue j = 0 while j < 10: j += 1 if j % 2 == 0: continue print(j) ``` 在第一个例子中,当 `i` 等于 5 时,循环将提前终止。在第二个例子中,所有偶数都被跳过。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值