前言
在 Python 中,条件语句和循环是控制程序流程的两个核心工具。它们帮助程序根据不同的条件执行不同的代码块,或者重复执行某些操作。下面详细介绍它们的功能、使用方法及注意事项
1. 条件语句
条件语句通过 if
、elif
和 else
实现,根据条件表达式的真假值,决定执行哪些代码块
1.1 基本结构
if
语句是最基本的条件判断语句,用于检查条件是否为真。如果条件成立(True
),则执行对应的代码块,否则跳过
age = 18
if age >= 18: # 判断是否成年
print("你是成年人")
else: # 否则执行未成年逻辑
print("你是未成年人")
运行结果:
你是成年人
代码说明:
条件表达式
age >= 18
被计算为布尔值True
或False
如果条件成立,执行
if
后的代码块如果条件不成立,执行
else
后的代码块
1.2 多重条件判断
当需要判断多个条件时,可以使用 elif
(即 "else if" 的缩写)来处理多个逻辑分支
score = 85
if score >= 90: # 判断是否为优秀
print("优秀")
elif score >= 75: # 判断是否为良好
print("良好")
else: # 其他情况
print("需要努力")
运行结果:
良好
代码说明:
代码会从上到下依次检查条件
一旦有条件为真,执行对应的代码块后跳过其他判断
如果所有条件都为假,则执行
else
的代码
1.3 嵌套条件
if
语句可以嵌套使用,即在一个 if
或 else
块中嵌套另一个 if
语句,用于处理更复杂的逻辑
age = 20
is_student = True
if age >= 18: # 判断是否成年
if is_student: # 进一步判断是否是学生
print("你是成年学生")
else:
print("你是成年人")
else:
print("你是未成年人")
运行结果:
你是成年学生
代码说明:
外层条件判断
age >= 18
成立后,进入内部判断根据内部条件
is_student
决定输出哪种信息
1.4 三元运算符
Python 提供了一种简洁的条件判断语法,称为三元运算符(条件为真时的值 if 条件 else 条件为假时的值
)
age = 18
status = "成年人" if age >= 18 else "未成年人"
print(status)
运行结果:
成年人
代码说明:
通过一行代码实现条件判断
如果条件
age >= 18
成立,status
的值为"成年人"
;否则为"未成年人"
2. 循环
循环允许重复执行某段代码,直到满足特定条件为止。Python 中主要有两种循环:for
和 while
2.1 for 循环
for
循环用于遍历序列(如列表、元组、字符串等),依次处理其中的每个元素
示例 1:遍历列表
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
运行结果:
apple
banana
cherry
示例 2:遍历字符串
字符串可以看作是字符的序列,for
循环可以逐字符遍历
word = "Python"
for char in word:
print(char)
运行结果:
P
y
t
h
o
n
示例 3:遍历范围
range()
函数用于生成数字序列。默认从 0 开始,可以指定起始值、结束值和步长
for i in range(1, 6): # 从 1 到 5(不包括 6)
print(i)
运行结果:
1
2
3
4
5
代码说明:
range(start, stop[, step])
生成从start
到stop-1
的数字,step
表示步长
2.2 while 循环
while
循环在条件为 True
时执行代码块,当条件为 False
时退出循环
示例:简单的 while 循环
count = 1
while count <= 5:
print(count)
count += 1 # 计数器 +1
运行结果:
1
2
3
4
5
代码说明:
初始值
count = 1
每次循环后,
count
自增 1,直到条件count <= 5
不成立时退出
注意:避免无限循环
如果条件始终为 True
,且没有适当的退出机制(如 break
),会导致程序进入无限循环
# 无限循环的示例
while True:
print("按 Ctrl+C 停止程序")
2.3 break 和 continue
break
和 continue
是循环控制语句,用于改变循环的执行流程
2.3.1 break
break
用于立即终止循环,不管循环条件是否成立
for i in range(1, 10):
if i == 5:
break # 当 i 等于 5 时退出循环
print(i)
运行结果:
1
2
3
4
2.3.2 continue
continue
用于跳过当前循环的剩余部分,直接进入下一次循环
for i in range(1, 10):
if i == 5:
continue # 跳过 i 等于 5 的情况
print(i)
运行结果:
1
2
3
4
6
7
8
9
2.4 else 与循环结合
Python 的循环可以搭配 else
子句,当循环正常结束(未被 break
打断)时执行 else
块
示例:循环正常结束
for i in range(1, 5):
print(i)
else:
print("循环正常结束")
运行结果:
1
2
3
4
循环正常结束
示例:被 break 打断
for i in range(1, 5):
if i == 3:
break # 打断循环
print(i)
else:
print("循环正常结束")
运行结果:
1
2
代码说明:
else
块仅在循环正常结束时执行如果循环被
break
打断,则不会执行else
部分
总结
条件语句关键点
使用
if
判断条件,elif
添加多条件分支,else
提供默认处理逻辑嵌套条件和三元运算符让逻辑更加灵活
循环关键点
for
循环适用于遍历序列(如列表、字符串等)while
循环更灵活,适用于需要动态条件的情况使用
break
提前退出循环,使用continue
跳过本次循环搭配
else
子句可以处理循环正常结束的情况