4.python中的流程控制语句
·
目录
1. 条件语句 (if, elif, else)
用于根据条件执行不同代码块。
- 基本结构:
if 条件1: 代码块1 elif 条件2: # 可选 代码块2 else: # 可选 代码块3 - 示例:
score = 85 if score >= 90: print("优秀") elif score >= 60: print("及格") else: print("不及格") - 特点:
- 支持嵌套:
if块内可包含新的if语句 - 条件表达式:
True/False或可转化为布尔值的对象(非空即真)
- 支持嵌套:
2. 循环语句
(1) while 循环
在条件满足时重复执行代码块。
- 基本结构:
while 条件: 循环体 - 示例:
count = 0 while count < 5: print(count) count += 1 # 避免无限循环 - 控制关键字:
break:立即退出循环continue:跳过当前迭代进入下一轮
(2) for 循环
遍历序列(如列表、字符串、元组)或可迭代对象。
-
基本结构:
for 变量 in 可迭代对象: 循环体 -
示例:
fruits = ["苹果", "香蕉", "橙子"] for fruit in fruits: print(fruit) # 遍历数字序列 for i in range(3): # 0,1,2 print(i) -
进阶用法:
- 结合
enumerate()获取索引:for index, value in enumerate(fruits): print(f"索引 {index}: 值 {value}") - 遍历字典:
info = {"name": "Alice", "age": 25} for key, value in info.items(): print(f"{key}: {value}")
- 结合
-
range()函数
range是Python内置函数,用于生成一个不可变的整数序列。它通常用于循环结构中控制迭代次数,或创建特定范围的数字列表。- 示例:
#range(stop) 生成从 0 到 stop-1 的整数序列 # 输出 0,1,2,3,4 for i in range(5): print(i) #range(start, stop) 生成从 start 到 stop-1 的整数 # 输出 3,4,5,6,7 for i in range(3, 8): print(i) #range(start, stop, step) 按步长 step 生成序列 # 输出 0,2,4,6,8(步长为2) for i in range(0, 10, 2): print(i) # 反向输出:10,8,6,4,2 for i in range(10, 0, -2): print(i)
- 示例:
3. 特殊控制语句
(1) break 与 continue
break:终止整个循环for i in range(10): if i == 5: break # 当i=5时退出循环 print(i)continue:跳过当前迭代for i in range(5): if i % 2 == 0: continue # 跳过偶数 print(i) # 只输出1,3
(2) else 子句
循环正常结束(未被 break 中断)时执行。如果被break中断就不会执行else的内容。
for循环示例:for i in range(3): print(i) else: print("循环完成") # 输出0,1,2后执行while循环同理。
(3) pass 语句
空操作占位符,保持语法完整性。
if condition:
pass # 待后续补充
else:
print("其他操作")
4. 嵌套控制
混合使用条件与循环语句实现复杂逻辑。
- 示例:查找质数
for num in range(2, 30): for i in range(2, num): if num % i == 0: break else: # 循环未被break中断 print(f"{num} 是质数")
总结
| 语句类型 | 作用场景 | 注意事项 |
|---|---|---|
if/elif/else | 分支选择 | 注意缩进和布尔值判断 |
while | 条件循环 | 需设置终止条件防死循环 |
for | 遍历可迭代对象 | 支持 range() 和复杂迭代 |
break | 立即退出循环 | 常用于满足条件时终止 |
continue | 跳过当前迭代 | 不终止整个循环 |
else | 循环正常结束后的收尾操作 | 与 break 行为互斥 |
pass | 语法占位 | 不影响程序逻辑 |
更多推荐



所有评论(0)