(三)Python基础入门-流程控制结构
流程控制是编程的核心基础,决定了代码的执行逻辑。Python提供了强大的流程控制工具,让我们能够编写灵活高效的程序。本文将深入讲解Python中的流程控制结构,包括条件语句、循环结构以及循环控制语句,并通过两个实战项目巩固所学知识。
一、条件语句(if/elif/else嵌套)
条件语句允许根据不同的条件执行不同的代码块,是程序决策的基础。
基本语法
if 条件1:# 条件1成立时执行
elif 条件2:# 条件2成立时执行
else:# 所有条件均不成立时执行
嵌套示例:成绩评级系统
score = 85if score >= 90:grade = "A"
elif score >= 80:# 嵌套条件判断if score >= 85: # 80-89分区间再细分grade = "B+"else:grade = "B"
elif score >= 70:grade = "C"
else:grade = "D(不及格)"print(f"成绩等级:{grade}")
关键点:
- if 语句必须有,elif和else可选
- 条件表达式结果为布尔值(True/False)
- 支持逻辑运算符:and, or, not
二、循环结构
1. while循环:当条件满足时重复执行
count = 0
while count < 5:print(f"这是第{count+1}次循环")count += 1 # 等效于 count = count + 1
2. for循环:遍历序列中的元素
# 遍历列表
fruits = ["苹果", "香蕉", "橙子"]
for fruit in fruits:print(f"我喜欢吃{fruit}")# 配合range()生成数字序列
for i in range(3): # 0, 1, 2print(f"循环次数:{i}")for i in range(1, 10, 2): # 1~9,步长为2print(f"奇数:{i}")
循环应用场景对比
循环类型 | 适用场景 | 特点 |
---|---|---|
while | 不确定循环次数(如用户输入验证) | 需手动更新循环条件 |
for | 遍历已知序列(列表、字符串等) | 自动迭代 |
三、循环控制语句
1. break:立即终止整个循环
# 在数字1-10中查找第一个能被3整除的数
for num in range(1, 11):if num % 3 == 0:print(f"找到第一个3的倍数:{num}")break
2. continue:跳过本次循环剩余代码
# 打印1-10中所有的奇数
for num in range(1, 11):if num % 2 == 0:continue # 跳过偶数print(num)
3. pass:空操作占位符
# 函数未实现时占位
def future_feature():pass # TODO: 后续实现此功能
控制语句对比表
语句 | 作用 | 使用场景 |
---|---|---|
break | 完全终止循环 | 满足条件时立即退出循环 |
continue | 跳过当前循环的剩余代码 | 排除特定情况继续循环 |
pass | 空操作,保持语法完整性 | 占位尚未实现的代码块 |
四、实战项目
项目1:猜数字游戏
import randomnumber = random.randint(1, 100) # 生成1-100的随机数
attempts = 0print("欢迎来到猜数字游戏!")
print("我已经想了一个1到100之间的整数,请开始猜测吧~")while True:guess = int(input("请输入你的猜测:"))attempts += 1if guess < number:print("猜小了,再试试!")elif guess > number:print("猜大了,再试试!")else:print(f"恭喜!你在{attempts}次尝试后猜中了数字{number}!")break
###项目2:乘法表生成器
# 生成9x9乘法表
for i in range(1, 10):for j in range(1, i+1):# 格式化输出,保持对齐print(f"{j}x{i}={i*j}", end='\t') print() # 每行结束换行# 进阶:生成任意乘法表
n = int(input("请输入乘法表尺寸:"))
for row in range(1, n+1):for col in range(1, row+1):result = row * colprint(f"{col}x{row}={result}", end=' '*(4-len(str(result))))print()
本文由元来智联开发团队出品:元来智联-网站、小程序等定制开发,专业开发服务商