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 能根据"情况"去执行不同的结果。

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

相关推荐
极梦网络无忧6 小时前
OpenClaw 基础使用说明(中文版)
python
codeJinger6 小时前
【Python】操作Excel文件
python·excel
XLYcmy6 小时前
一个针对医疗RAG系统的数据窃取攻击工具
python·网络安全·ai·llm·agent·rag·ai安全
Islucas7 小时前
Claude code入门保姆级教程
python·bash·claude
萝卜白菜。7 小时前
TongWeb7.0相同的类指明加载顺序
开发语言·python·pycharm
赵钰老师7 小时前
【ADCIRC】基于“python+”潮汐、风驱动循环、风暴潮等海洋水动力模拟实践技术应用
python·信息可视化·数据分析
爬山算法7 小时前
MongoDB(80)如何在MongoDB中使用多文档事务?
数据库·python·mongodb
YuanDaima20488 小时前
基于 LangChain 1.0 的检索增强生成(RAG)实战
人工智能·笔记·python·langchain·个人开发·langgraph
nbwenren8 小时前
Springboot中SLF4J详解
java·spring boot·后端