元素码农
基础
UML建模
数据结构
算法
设计模式
网络
TCP/IP协议
HTTPS安全机制
WebSocket实时通信
数据库
sqlite
postgresql
clickhouse
后端
rust
go
java
php
mysql
redis
mongodb
etcd
nats
zincsearch
前端
浏览器
javascript
typescript
vue3
react
游戏
unity
unreal
C++
C#
Lua
App
android
ios
flutter
react-native
安全
Web安全
测试
软件测试
自动化测试 - Playwright
人工智能
Python
langChain
langGraph
运维
linux
docker
工具
git
svn
🌞
🌙
目录
▶
Python基础语法
Python环境安装与配置
第一个Python程序
变量与数据类型
字面量详解
基本运算符
流程控制语句
包管理与虚拟环境
▶
Python数据结构
列表(List)详解
元组(Tuple)使用指南
字典(Dict)完全解析
集合(Set)操作大全
▶
函数与模块
函数定义与参数传递
Lambda表达式
模块导入与使用
常用内置函数
▶
面向对象编程
类与对象
继承与多态
魔术方法解析
装饰器原理与应用
▶
Python类型系统
类型注解(Type Hints)
Pydantic基础
Pydantic高级特性
typing模块基础
泛型类型详解
泛型类详解
Callable类型详解
Awaitable类型详解
类型变量与约束
类型别名与Protocol
TypedDict详解
Annotated类型
Reducer类型
类型检查工具使用
类型注解最佳实践
▶
关键字
pass关键字
raise关键字
global关键字
nonlocal关键字
yield关键字
assert关键字
with关键字
async/await关键字
▶
包管理
pip包管理基础
虚拟环境管理
包管理工具对比
requirements.txt规范
依赖管理与requirements.txt
setup.py配置说明
Poetry项目管理工具
Conda包管理系统
打包与发布Python包
PyPI发布流程
私有PyPI仓库
▶
Python高级特性
迭代器与生成器
多线程编程
协程与异步IO
元编程入门
反射机制详解
描述符协议
上下文管理器协议
垃圾回收机制
内存管理深度解析
性能优化指南
▶
文件与异常处理
文件读写操作
JSON数据解析
异常处理机制
上下文管理器
发布时间:
2025-03-24 12:26
↑
☰
# Python流程控制语句 本文将详细介绍Python中的流程控制语句,包括条件语句、循环语句等,帮助你理解如何控制程序的执行流程。 ## 条件语句 ### if语句 ```python # 基本if语句 age = 18 if age >= 18: print("你已经成年了") # if-else语句 age = 16 if age >= 18: print("你已经成年了") else: print("你还未成年") # if-elif-else语句 score = 85 if score >= 90: print("优秀") elif score >= 80: print("良好") elif score >= 60: print("及格") else: print("不及格") ``` ### 条件表达式(三元运算符) ```python # 基本语法:value_if_true if condition else value_if_false age = 20 status = "成年" if age >= 18 else "未成年" print(status) # 输出:成年 # 在表达式中使用 num = -5 abs_num = num if num >= 0 else -num print(abs_num) # 输出:5 ``` ## 循环语句 ### while循环 ```python # 基本while循环 count = 0 while count < 5: print(count) count += 1 # while循环with else num = 0 while num < 3: print(num) num += 1 else: print("循环正常结束") # 使用break终止循环 while True: user_input = input("输入'quit'退出:") if user_input == 'quit': break print("你输入了:", user_input) ``` ### for循环 ```python # 遍历列表 fruits = ["苹果", "香蕉", "橙子"] for fruit in fruits: print(fruit) # 遍历字符串 for char in "Python": print(char) # 使用range()函数 for i in range(5): # 0到4 print(i) for i in range(2, 5): # 2到4 print(i) for i in range(0, 10, 2): # 0,2,4,6,8 print(i) # for循环with else for i in range(3): print(i) else: print("循环正常结束") ``` ### 循环控制语句 ```python # break语句:终止循环 for i in range(5): if i == 3: break print(i) # 输出:0,1,2 # continue语句:跳过当前迭代 for i in range(5): if i == 2: continue print(i) # 输出:0,1,3,4 # pass语句:空操作 for i in range(3): if i == 1: pass # 什么都不做 else: print(i) ``` ## 嵌套控制结构 ### 嵌套条件语句 ```python # 嵌套if语句 age = 20 has_id = True if age >= 18: if has_id: print("可以进入") else: print("需要出示证件") else: print("年龄不够") ``` ### 嵌套循环 ```python # 九九乘法表 for i in range(1, 10): for j in range(1, i + 1): print(f"{j}×{i}={i*j}", end="\t") print() # 换行 # 带break的嵌套循环 for i in range(3): for j in range(3): if i == j == 1: break print(f"({i},{j})", end=" ") print() ``` ## 实际应用示例 ### 1. 猜数字游戏 ```python import random def guess_number(): # 生成1-100的随机数 target = random.randint(1, 100) attempts = 0 while True: attempts += 1 try: guess = int(input("猜一个1-100的数字:")) if guess < target: print("太小了!") elif guess > target: print("太大了!") else: print(f"恭喜你猜对了!用了{attempts}次") break except ValueError: print("请输入有效的数字!") # 运行游戏 guess_number() ``` ### 2. 简单计算器 ```python def calculator(): while True: print("\n简单计算器") print("1. 加法") print("2. 减法") print("3. 乘法") print("4. 除法") print("5. 退出") choice = input("选择操作(1-5):") if choice == '5': print("谢谢使用!") break if choice in ('1', '2', '3', '4'): try: num1 = float(input("输入第一个数字:")) num2 = float(input("输入第二个数字:")) if choice == '1': print(f"{num1} + {num2} = {num1 + num2}") elif choice == '2': print(f"{num1} - {num2} = {num1 - num2}") elif choice == '3': print(f"{num1} * {num2} = {num1 * num2}") elif choice == '4': if num2 != 0: print(f"{num1} / {num2} = {num1 / num2}") else: print("错误:除数不能为零!") except ValueError: print("请输入有效的数字!") else: print("无效的选择!") # 运行计算器 calculator() ``` ### 3. 简单的菜单系统 ```python def show_menu(): print("\n=== 主菜单 ===") print("1. 查看任务") print("2. 添加任务") print("3. 删除任务") print("4. 退出") def task_manager(): tasks = [] while True: show_menu() choice = input("请选择操作(1-4):") if choice == '1': if tasks: print("\n当前任务:") for i, task in enumerate(tasks, 1): print(f"{i}. {task}") else: print("\n暂无任务") elif choice == '2': task = input("\n输入新任务:") tasks.append(task) print("任务已添加!") elif choice == '3': if tasks: try: index = int(input("\n输入要删除的任务编号:")) - 1 if 0 <= index < len(tasks): removed_task = tasks.pop(index) print(f"已删除任务:{removed_task}") else: print("无效的任务编号!") except ValueError: print("请输入有效的数字!") else: print("\n暂无任务可删除") elif choice == '4': print("\n感谢使用!再见!") break else: print("\n无效的选择,请重试!") # 运行任务管理器 task_manager() ``` ## 最佳实践 1. **清晰的条件判断** ```python # 好的写法 if user.is_active and user.has_permission: process_request() # 避免的写法 if user.is_active == True and user.has_permission == True: process_request() ``` 2. **适当的循环选择** ```python # 当知道确切次数时使用for循环 for i in range(5): print(i) # 当条件不确定时使用while循环 while not is_done(): process_next_item() ``` 3. **合理使用break和continue** ```python # 使用break提前退出 while True: if error_condition: break # 使用continue跳过不需要的情况 for item in items: if not item.is_valid: continue process_item(item) ``` 4. **避免深层嵌套** ```python # 不好的写法 if condition1: if condition2: if condition3: do_something() # 好的写法 if not condition1: return if not condition2: return if not condition3: return do_something() ``` 通过本文的学习,你应该已经掌握了Python中各种流程控制语句的使用方法。这些控制结构是编程的基础,合理使用它们可以帮助你写出更清晰、更高效的代码。继续练习这些概念,你会逐渐熟悉它们在不同场景下的应用!