Python编程实战 · 基础入门篇 | 条件判断 if...else

在编程世界中,条件判断(Condition Statement) 是让程序拥有"思考能力"的关键。 通过判断不同的条件,程序可以执行不同的代码,从而做出"决策"。

在 Python 中,条件判断主要依靠 ifelifelse 三个关键字来实现。 本章将带你从零开始掌握 Python 的条件结构,并通过实例理解其背后的逻辑。


一 为什么需要条件判断

设想你写一个自动售票程序:

  • 如果用户年龄小于 12 岁,显示「儿童票」
  • 如果年龄在 12 到 60 岁之间,显示「成人票」
  • 否则,显示「老年票」

这就是典型的"根据条件执行不同操作"的逻辑。 程序不能只"计算",它还要能"判断"。


二 if 语句的基本结构

Python 使用 if 语句进行条件判断,语法非常直观:

python 复制代码
if 条件表达式:
    代码块
  • 条件表达式:任何返回布尔值(True/False)的表达式。
  • 代码块:当条件为真时执行的语句。
  • 冒号(:) 表示代码块开始。
  • 缩进(通常 4 个空格) 表示从属关系。

示例:

python 复制代码
age = 18
if age >= 18:
    print("你已成年")

输出:

复制代码
你已成年

如果条件不满足,程序直接跳过代码块,不执行。


三 if...else 结构

当条件为假时,我们通常希望程序执行另一段代码,这就用到 else

python 复制代码
if 条件:
    语句块1
else:
    语句块2

示例:

python 复制代码
age = int(input("请输入年龄:"))
if age >= 18:
    print("你已成年")
else:
    print("你未成年")

运行示例:

复制代码
请输入年龄:16
你未成年

四 if...elif...else 多分支结构

有时需要判断多个条件,例如根据分数给出等级:

python 复制代码
if 分数 >= 90:
    优
elif 分数 >= 80:
    良
elif 分数 >= 60:
    及格
else:
    不及格

示例:

python 复制代码
score = int(input("请输入成绩:"))

if score >= 90:
    print("优秀")
elif score >= 80:
    print("良好")
elif score >= 60:
    print("及格")
else:
    print("不及格")

运行示例:

复制代码
请输入成绩:85
良好

✅ 提示 elif 可以有多个; else 最多只能有一个,也可以省略。


五 条件表达式的真与假

在 Python 中,不仅仅是布尔值可以用作条件。 任何"可求值的对象"都能被判断真假:

表达式 结果
0, 0.0, '', [], {}, None False
其他值 True

示例:

python 复制代码
name = ""
if name:
    print("你输入了名字")
else:
    print("名字不能为空")

输出:

复制代码
名字不能为空

六 嵌套判断

有时条件中还需要继续判断,可以嵌套使用 if

示例:

python 复制代码
age = int(input("请输入年龄:"))

if age >= 18:
    gender = input("请输入性别(男/女):")
    if gender == "男":
        print("欢迎参加男士组比赛")
    else:
        print("欢迎参加女士组比赛")
else:
    print("未成年组暂不参赛")

七 条件运算符(三元表达式)

如果只是根据条件选择一个值,可以使用更简洁的写法:

python 复制代码
结果 = 表达式1 if 条件 else 表达式2

示例:

python 复制代码
age = 20
msg = "成年" if age >= 18 else "未成年"
print(msg)

输出:

复制代码
成年

✅ 适用于简单选择判断,代码更紧凑。


八 多条件组合

可以使用逻辑运算符 andornot 组合多个条件。

示例 1:使用 and

python 复制代码
age = 20
score = 85

if age >= 18 and score >= 60:
    print("符合条件")

示例 2:使用 or

python 复制代码
if age < 18 or score < 60:
    print("不符合要求")

示例 3:使用 not

python 复制代码
is_vip = False
if not is_vip:
    print("普通用户无法进入VIP区")

九 综合实战:判断闰年

编写一个程序,判断某年是否为闰年。 规则如下:

  • 能被 4 整除但不能被 100 整除;
  • 或者能被 400 整除。

示例:

python 复制代码
year = int(input("请输入年份:"))

if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
    print(f"{year} 是闰年")
else:
    print(f"{year} 不是闰年")

运行示例:

yaml 复制代码
请输入年份:2024
2024 是闰年

十 实战案例:成绩评语系统

python 复制代码
score = int(input("请输入成绩:"))

if score >= 90:
    print("表现优异,继续保持!")
elif score >= 80:
    print("成绩良好,还有提升空间!")
elif score >= 60:
    print("勉强及格,需加油!")
else:
    print("不及格,请认真复习!")

输出示例:

复制代码
请输入成绩:75
成绩良好,还有提升空间!

十一 小结

结构 作用 示例
if 判断条件是否为真 if age > 18:
if...else 条件为假时执行另一分支 if cond: ... else: ...
if...elif...else 多条件判断 if a>0 elif a==0 else
嵌套 if 条件中再判断 if cond1: if cond2:
条件表达式 简洁的单行判断 a if cond else b

✅ 总结一句话

if...else 是程序逻辑的基石,让 Python 能根据"情况"去执行不同的结果。

掌握了条件判断,程序就能"有智慧"地做选择。

相关推荐
Victor3564 小时前
Redis(81)Redis的缓存雪崩是什么?
后端
Victor3565 小时前
Redis(80)如何解决Redis的缓存穿透问题?
后端
程序员爱钓鱼5 小时前
Python编程实战 · 基础入门篇 | 循环语句 for / while
后端·python
fox_lht5 小时前
第一章 不可变的变量
开发语言·后端·rust
舒一笑10 小时前
PandaCoder:致敬MyBatis Log Plugin,但我们做得更极致!
后端·程序员·intellij idea
飞翔的佩奇11 小时前
【完整源码+数据集+部署教程】【天线&水】舰船战舰检测与分类图像分割系统源码&数据集全套:改进yolo11-repvit
前端·python·yolo·计算机视觉·数据集·yolo11·舰船战舰检测与分类图像分割系统
简单点了11 小时前
go前后端项目的启动 、打包和部署
开发语言·后端·golang
木头左12 小时前
最大回撤约束下ETF多因子动态止盈参数校准方案
python
汤姆yu12 小时前
2026版基于python的协同过滤音乐推荐系统
开发语言·python