Python中的while循环
简介
在Python编程语言中,while循环是一种用于重复执行一段代码块的控制结构。它允许我们根据条件的真假来决定是否继续执行循环体中的代码。
与for循环不同,while循环的次数是不确定的,因为它是根据条件来判断是否继续执行。只要条件为真,循环就会继续执行。
在本文中,我们将介绍while循环的基本语法和用法,并通过一些示例代码来说明其应用。
基本语法
while循环的基本语法如下所示:
while condition:
# 循环体代码
在这个语法中,condition
是一个布尔表达式,用于判断循环是否继续执行。只要该条件为真,循环将一直执行循环体中的代码。
示例代码
以下是一个简单的示例代码,演示了如何使用while循环计算1到10的和:
sum = 0
num = 1
while num <= 10:
sum += num
num += 1
print("1到10的和为", sum)
在上面的代码中,我们使用了两个变量sum
和num
。sum
用于存储和的结果,num
用于迭代从1到10的数字。
while循环的条件是num <= 10
,只要num
小于等于10,循环就会继续执行。
循环体中的代码sum += num
用于将num
的值加到sum
中,num += 1
用于递增num
的值。
最后,我们使用print
函数输出计算结果。
输出结果为:
1到10的和为 55
while循环的应用
以下是一些常见的使用while循环的场景:
数字猜谜游戏
import random
number = random.randint(1, 100)
guess = 0
tries = 0
while guess != number:
guess = int(input("猜一个1到100的数字: "))
tries += 1
if guess < number:
print("太小了!")
elif guess > number:
print("太大了!")
else:
print("猜对了!")
print("你用了", tries, "次猜对了。")
在上述代码中,我们生成了一个1到100之间的随机数。然后,使用while循环让用户猜这个数字。
循环条件是guess != number
,只要用户的猜测和生成的随机数不相等,循环就会继续执行。
根据用户的猜测,我们输出相应的提示信息。如果猜对了,循环结束。
文件读取
file = open("data.txt", "r")
line = file.readline()
while line != "":
print(line)
line = file.readline()
file.close()
在这个示例中,我们打开一个名为data.txt
的文件,并使用while循环逐行读取文件内容。
循环条件是line != ""
,只要读取的行不为空,循环就会继续执行。
在循环体中,我们使用print
函数输出每一行的内容。循环结束后,我们关闭文件。
类图
下面是一个使用mermaid语法表示的while循环的类图:
classDiagram
class WhileLoop {
<<loop>>
+condition: bool
+execute(): void
}
class CodeBlock {
+execute(): void
}
class LoopControl {
+execute(): void
}
WhileLoop --> CodeBlock
WhileLoop --> LoopControl
在这个类图中,有三个类:WhileLoop、CodeBlock和LoopControl。
WhileLoop类表示while循环的结构,它具有一个布尔类型的condition
属性,和一个execute
方法。
CodeBlock类表示while循环中的代码块,它也有一个execute
方法。
LoopControl类表示while循环的控制流程,它也有一个execute
方法。