python条件控制与if语句

一、条件控制与 if 语句的核心概念

条件控制的本质是:程序根据一个或多个条件的 "真 / 假"(True/False),决定执行哪一段代码。if 语句是实现条件控制的核心语法,它有三种基本形式:单分支、双分支、多分支。

1. 单分支 if 语句(满足条件才执行)

语法

python

运行

复制代码
if 条件表达式:
    满足条件时执行的代码块  # 注意缩进,Python用缩进区分代码块

示例:判断数字是否为正数

python

运行

复制代码
num = 18
if num > 0:  # 条件表达式:num大于0
    print(f"{num} 是正数")  # 满足条件时执行

输出18 是正数

2. 双分支 if-else 语句(二选一执行)

语法

python

运行

复制代码
if 条件表达式:
    满足条件时执行的代码块
else:
    不满足条件时执行的代码块

示例:判断数字是正数还是非正数

python

运行

复制代码
num = -5
if num > 0:
    print(f"{num} 是正数")
else:
    print(f"{num} 不是正数")

输出-5 不是正数

3. 多分支 if-elif-else 语句(多选一执行)

语法

python

运行

复制代码
if 条件1:
    满足条件1执行的代码块
elif 条件2:
    满足条件2执行的代码块
# 可以有多个elif
else:
    所有条件都不满足时执行的代码块

示例:判断成绩等级

python

运行

复制代码
score = 85
if score >= 90:
    print("优秀")
elif score >= 80:  # 隐含条件:score < 90 且 score >=80
    print("良好")
elif score >= 60:
    print("及格")
else:
    print("不及格")

输出良好

二、关键细节说明

  1. 条件表达式 :可以是直接的比较(>、<>=<===!=),也可以是逻辑运算(andornot),最终结果必须是 True/False。示例(逻辑运算):

    python

    运行

    复制代码
    age = 20
    if 18 <= age < 60:  # 等价于 age >=18 and age <60
        print("成年且未退休")
  2. 缩进规则 :Python 中没有大括号{},而是用4 个空格(或 1 个 Tab) 缩进表示代码块归属,缩进错误会直接报错。❌ 错误示例(缩进不一致):

    python

    运行

    复制代码
    num = 3
    if num > 0:
    print("正数")  # 没有缩进,报错
  3. 空判断(pass) :如果条件满足但暂时不想执行任何代码,可用pass占位,避免语法错误。

    python

    运行

    复制代码
    num = 0
    if num == 0:
        pass  # 占位,不执行任何操作
    else:
        print("非零")

三、实际应用示例

写一个程序,根据输入的分数判断是否及格,且处理非数字输入的异常:

python

运行

复制代码
try:
    score = float(input("请输入你的分数:"))
    if score < 0 or score > 100:
        print("分数必须在0-100之间!")
    elif score >= 60:
        print("恭喜,及格了!")
    else:
        print("很遗憾,不及格。")
except ValueError:
    print("输入错误,请输入数字!")

测试用例

  • 输入 88 → 输出:恭喜,及格了!
  • 输入 59 → 输出:很遗憾,不及格。
  • 输入 101 → 输出:分数必须在 0-100 之间!
  • 输入 abc → 输出:输入错误,请输入数字!

总结

  1. if 语句是 Python 实现条件判断的核心,有单分支(if)、双分支(if-else)、多分支(if-elif-else)三种形式。
  2. 条件表达式最终要返回 True/False,可结合比较运算符和逻辑运算符使用。
  3. Python 通过缩进 区分代码块,缩进错误会导致程序报错,pass可用于空代码块占位。
相关推荐
电化学仪器白超2 小时前
计量室电路板长期稳定性自动化测试系统开发与部署
python·单片机·嵌入式硬件·自动化
MediaTea2 小时前
Python OOP 设计思想 13:封装服务于演化
linux·服务器·前端·数据库·python
love530love2 小时前
突破 ComfyUI 环境枷锁:RTX 3090 强行开启 comfy-kitchen 官方全后端加速库实战
人工智能·windows·python·cuda·comfyui·triton·comfy-kitchen
wang6021252182 小时前
流式输出注意点
python·状态模式·fastapi
未定义.2212 小时前
第3篇:UI自动化核心操作:输入、点击、弹窗、下拉框全场景实战
运维·python·ui·自动化·jenkins·集成测试·pytest
27669582922 小时前
vercel 安全检测逆向 x-vercel-challenge-solution
开发语言·python·solution·vercel-solution·x-vercel·vercel逆向·ensun
dagouaofei2 小时前
AI PPT 工具怎么选?5个维度对比6款产品
人工智能·python·powerpoint
深蓝电商API2 小时前
Scrapy日志系统详解与生产环境配置
爬虫·python·scrapy
Irene.ll2 小时前
DAY25 异常处理
python