在python中,我们常说的if其实不是函数,而是条件控制语句。所谓if嵌套,就是指在if、elif或者else的代码块内部,再书写新的if语句,从而处理更加复杂的多层条件判断逻辑。掌握嵌套写法可以让我们根据多个维度的条件做出不同的程序响应。

基础语法结构
python通过缩进来区分代码层级,嵌套的核心就是内层if要比外层if多一层缩进。基本形式如下:
if 条件1:
# 外层条件成立时执行
if 条件2:
# 内层条件也成立时执行
print('条件1和条件2都成立')
else:
print('条件1成立但条件2不成立')
else:
print('条件1不成立')
使用elif与else配合嵌套
除了单纯嵌套,我们还可以在外层分支中结合elif和else,再在对应分支内写if,形成更清晰的结构。
score = 85
if score >= 60:
if score >= 90:
print('优秀')
else:
print('及格')
else:
if score >= 30:
print('不及格')
else:
print('严重不及格')
常见错误提醒
- 缩进不一致会导致语法错误,内层if必须严格比外层多四个空格或一个制表符。
- 不要混淆input()函数和<input>标签,input()是python内置函数,用于接收用户输入。
- 嵌套层级过深会降低可读性,一般建议不超过三层,复杂逻辑可拆分为函数。
实战小例子
下面例子先判断用户是否登录,再判断权限等级,展示典型的双层嵌套用法。
is_login = True
role = 'admin'
if is_login:
if role == 'admin':
print('欢迎管理员')
elif role == 'user':
print('欢迎普通用户')
else:
print('未知角色')
else:
print('请先登录')
总结
python中的if嵌套本质就是语句块中包含另一组if语句,依靠缩进表达层级。写的时候先画清楚判断流程,再按层写代码,就能轻松实现多条件控制。