程序分支结构
1. 单分支结构
语法结构:
if <条件>:
<代码块>
执行逻辑:
- 条件为真时执行代码块
- 类似自然语言中的"如果…则…"
应用案例:
# 猜数字示例
guess = eval(input("请输入数字:"))
if guess == 99:
print("猜对了!")
# 条件直接使用布尔值
if True:
print("条件永远成立,必定执行")
2. 二分支结构
语法结构:
if <条件>:
<代码块1>
else:
<代码块2>
紧凑形式:
<表达式1> if <条件> else <表达式2>
应用案例:
# 基础形式
guess = eval(input("请输入数字:"))
if guess == 99:
print("猜对了")
else:
print("猜错了")
# 紧凑形式
result = "对" if guess == 99 else "错"
print("猜{}".format(result))
3. 多分支结构
语法结构:
if <条件1>:
<代码块1>
elif <条件2>:
<代码块2>
...
else:
<默认代码块>
易错点分析:
# 错误的多分支示例(成绩分级逻辑错误)
score = int(input("请输入成绩:"))
if score >= 60:
print("D")
elif score >= 70: # 永远不会被执行
print("C")
elif score >= 80:
print("B")
elif score >= 90:
print("A")
# 正确写法应倒序判断
if score >= 90:
print("A")
elif score >= 80:
print("B")
elif score >= 70:
print("C")
elif score >= 60:
print("D")
else:
print("不及格")
4. 条件判断与组合
比较运算符:
<
小于<=
小于等于>
大于>=
大于等于==
等于!=
不等于
逻辑运算符:
# 与运算
if x > 0 and x < 100:
print("x在0-100之间")
# 或运算
if guess < 0 or guess > 100:
print("数值越界")
# 非运算
if not (x > y):
print("x不大于y")
5. 异常处理
基本结构:
try:
<可能异常的代码块>
except [异常类型]:
<异常处理代码块>
完整结构:
try:
<代码块1>
except <异常类型1>:
<代码块2>
except <异常类型2>:
<代码块3>
else:
<无异常时执行>
finally:
<始终执行>
应用案例:
# 基础异常处理
try:
num = eval(input("请输入整数:"))
print(num**2)
except:
print("输入的不是整数!")
# 指定异常类型
try:
num = eval(input("请输入数字:"))
except NameError: # 处理变量未定义错误
print("请输入阿拉伯数字!")
except SyntaxError: # 处理语法错误
print("输入格式错误!")
else:
print("平方值为:", num**2)
finally:
print("----程序执行结束----")
关键要点总结
分支结构类型:
- 单分支:简单条件判断
- 二分支:条件+备选方案
- 多分支:多条件阶梯判断
条件组合技巧:
- 使用
and
组合多个必须满足的条件 - 使用
or
组合多个可选条件 - 使用
not
进行逻辑取反
- 使用
异常处理最佳实践:
- 优先捕获具体异常类型
- 使用
else
处理正常流程 finally
保证资源释放- 避免空except(会捕获所有异常)
常见错误防范:
- 多分支条件的顺序错误
- 比较运算符的方向错误
- 未处理可能的异常情况
- 误用赋值运算符
=
代替比较运算符==