Python While Loop – 初学者完整指南

Python While Loop – 初学者完整指南

5分钟

Python while 循环及其语法,。

for 循环不同。在迭代中,while 循环依赖于一个条件来完成执行。


编码时,在某些情况下,可能不知道循环的截止点。例如,一个程序要求用户无限次输入,直到他按 ESC 键或读取文件,直到找到特定的令牌。


1. 什么是 Python While Loop?

while 循环是一种控制流结构,它无限期地重复执行代码块 no。直到给定条件变为假的次数。例如,想计算一个范围内奇数的出现次数。一些技术参考称其为预测试循环,因为它在每次迭代之前都会检查条件。

1.1. Python while 循环 – 语法

while some condition (or expression) :
    a block of code

语法清楚地表明 Python 首先评估条件。

如果检查失败,则控件不会进入循环,而是将转移到下一条语句。而如果条件通过,则循环中的语句应执行。

此循环将重复,直到 while 条件失败或返回 false。当发生这种情况时,循环将中断并将控制权传递给下一个可执行语句。

1.2. Python 循环工作流

1.3. Python 中的 while 循环 – 示例

此示例演示如何计算用户输入的范围内(不包括终结点)中奇数的出现次数。


def dbgprint(x):
    if debug == True:
        print(x)

#ask user to enter the range values
debug = False
r1 = int(input("Enter the starting range value?"))
r2 = int(input("Enter the ending range value?"))
         
dbgprint("Range: %d - %d" % (r1, r2))

num = r1 + 1
count = 0

while num < r2:
    dbgprint("num: %d" % (num))
    res = num % 2
    dbgprint("res: %d" % (res))
    if (num % 2) > 0:
        count += 1
    num += 1

print("Odd count: %d" % (count))

完成上述代码的执行后,应会看到以下输出。

Enter the starting range value? 1
Enter the ending range value? 100
Odd count: 49

在这个程序中,我们使用以下四个变量。

1. R1 – 起始范围值

2. R2 – 结束范围值

3. num – 我们正在测试奇数的变量

4. 计数 – 计数器变量,在每次阳性测试时递增

我们已经初始化了“num”变量,起始偏移量加一,计数器变量初始化为零。循环正在测试“num”是否小于结束偏移值,否则它将中断。

在每次迭代中,循环中的代码块正在计算“num”变量的其余部分。非零结果意味着该数字是奇数,并且“count”变量将增加 1。

while 循环中的最后一条语句将 “num” 的值增加 2,然后重新执行。只有在“num”的值等于或大于结束范围偏移量(即“r<>”)时,循环才应停止。

2. Else 子句与 Python While 循环

在 Python 中,我们可以在 “while” 循环结束后添加一个可选的 else 子句。

else 子句中的代码将始终运行,但在 while 循环完成执行后。它不会运行的一种情况是循环在“break”语句后退出。

当您希望在 while 循环结束后执行一组指令时,即不使用 break 语句,使用 else 子句是有意义的。

现在让我们看一个示例来演示在 Python while 循环中使用 “else”。

2.1. 在 Python 中使用 else 循环 – 示例

def while_else_demo():

    count = 0
    while count < 5 :
        num = int(input("Enter number between 0-100?"))
        if (num < 0) or (num > 100):
            print("Aborted while: You've entered an invalid number.")
            break
        count += 1
    else:
        print("While loop ended gracefully.")

while_else_demo()

上面的程序运行 while 循环,直到计数小于 5。

它采用 0-100 之间的数字作为输入。如果输入有效数字 5 次,则 while 循环成功运行,并且将显示来自 else 子句的消息。

如果输入了一个无效的数字,那么循环将被中止,而不会执行 else 中的代码。

迭代#1 虽然循环以成功完成,而“else”子句执行。

Enter number between 0-100?1
Enter number between 0-100?2
Enter number between 0-100?3
Enter number between 0-100?4
Enter number between 0-100?5
While loop ended gracefully.

迭代 #2 而循环中止和“else”子句不会执行。

Enter number between 0-100?1
Enter number between 0-100?101
Aborted while: You've entered an invalid number.

在 Python 中while循环 –

选择 for 或者whiles需要根据实际 情况去决定,大量去练习。



另外,如果您发现它有用,请与您的同事分享。此外,请连接到我们的社交媒体(Facebook/Twitter)帐户以接收及时的更新。

展开阅读全文

页面更新:2024-02-15

标签:子句   奇数   范围内   示例   变量   语句   初学者   语法   条件   完整   代码   数字   指南

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top