> 技术文档 > (三)Python基础入门-流程控制结构

(三)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}\")

关键点:

  1. if 语句必须有,elif和else可选
  2. 条件表达式结果为布尔值(True/False)
  3. 支持逻辑运算符:and, or, not

二、循环结构

1. while循环:当条件满足时重复执行

count = 0while 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, 2 print(f\"循环次数:{i}\")for i in range(1, 10, 2): # 1~9,步长为2 print(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 += 1 if 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 * col print(f\"{col}x{row}={result}\", end=\' \'*(4-len(str(result)))) print()

本文由元来智联开发团队出品:元来智联-网站、小程序等定制开发,专业开发服务商