if else 语句是编程里面最基础的条件判断语句,作用就是根据判断条件的真假,选择执行对应的代码块,条件成立就执行 if 里面代码,条件不成立就执行 else 里面代码,它属于分支结构,程序不会全部代码顺序跑完,而是根据条件跳转执行,除了基础的 if else 二选一,还支持 if else if 多分支判断,可以连续判断多个条件,适合成绩分级,权限判断,数值比较这类场景,几乎所有主流编程语言都支持这套语法,只是写法格式略有差别,比如 C Java Python,Python 不需要大括号,依靠缩进划分代码块,这点是新手最容易出错的地方。
基础语法结构
1 基础二选一 if else
逻辑:条件为真,执行 if 代码;条件为假,执行 else 代码
C / Java 示例
if(条件表达式){
条件成立执行代码
}else{
条件不成立执行代码
}
Python 示例
if 条件表达式:
条件成立执行代码
else:
条件不成立执行代码
2 多分支 if else if
逻辑:从上到下依次判断,只要某一个条件满足,就执行对应代码块,后面所有分支直接跳过,全部条件都不满足,才执行最后的 else
C / Java 示例
if(条件1){
代码1
}else if(条件2){
代码2
}else if(条件3){
代码3
}else{
全部不满足执行代码
}
Python 示例
if 条件1:
代码1
elif 条件2:
代码2
elif 条件3:
代码3
else:
全部不满足执行代码
3 if 嵌套
就是在 if 或者 else 代码块里面,再写一层 if else,适合多层判断场景,比如先判断是否登录,登录之后再判断用户权限等级,嵌套层级不要太深,否则代码可读性会变差。
使用要点
1 条件表达式最终结果必须是布尔值,也就是真或者假,比较运算符大于 小于 等于 不等于,逻辑运算符 and or not 都可以写进条件里面
2 代码块范围,C Java 用大括号包裹,Python 严格依靠缩进,缩进错误会造成代码不属于 if else 分支,执行逻辑出错
3 else 不能单独写,必须配套 if 使用,else 是可选的,也可以只写 if,不写 else,也就是条件成立才执行,不成立什么都不做
4 if else if 是互斥分支,命中一个分支之后不会继续判断后面条件,这点和多个独立 if 不一样,多个独立 if 会全部依次判断
独立 if 和 if else if 区别对照表
| 写法 | 执行特点 |
|---|---|
| 多个独立 if | 每一个 if 都会判断,所有满足条件分支都会执行 |
| if else if | 只要命中一个分支,后续条件不再判断 |
简单案例
需求:分数判断,大于等于 90 优秀,60 到 89 及格,低于 60 不及格
Python 代码
score = 75
if score >= 90:
print("优秀")
elif score >= 60:
print("及格")
else:
print("不及格")
常见问题
问题 1 ifelse 语句的用法,Python 里面为什么没有 else if
回答 1 ifelse 语句的用法,Python 多分支关键字是 elif,是 else if 的缩写合并写法,语法和其他语言 else if 逻辑一致,不要写成 else if,会报语法错误。
问题 2 ifelse 语句的用法,条件里面能不能同时写多个判断
回答 2 ifelse 语句的用法,可以,使用逻辑运算符 and 并且,or 或者,not 取反,把多个条件组合成一个复合条件。
问题 3 ifelse 语句的用法,if else 和三目运算符有什么区别
回答 3 ifelse 语句的用法,if else 是完整多行分支语句,三目运算符是简写单行表达式,适合简单赋值场景,复杂逻辑还是推荐标准 if else 可读性更好。
问题 4 ifelse 语句的用法,嵌套 if else 层级太多怎么办
回答 4 ifelse 语句的用法,嵌套层级过深可以考虑改成 if else if 多分支,或者抽取函数,减少嵌套,避免代码难维护,减少逻辑出错概率。
免责申明
本文为编程基础知识讲解,不同编程语言语法细节存在差异,实际开发请对照对应语言官方文档,代码编写请结合业务逻辑测试,相关程序运行风险由使用者自行承担。


