Python中的条件语句怎么使用?

Python 中的条件语句用于根据不同的条件执行不同的代码块,核心是 if、elif(else if 的缩写)和 else,语法简洁且依赖缩进 (通常是 4 个空格)来区分代码块,而非大括号 {}。

一、基本语法结构

python 复制代码
if 条件1:
    # 条件1为 True 时执行的代码(注意缩进)
    代码块1
elif 条件2:
    # 条件1为 False,且条件2为 True 时执行的代码
    代码块2
else:
    # 所有条件都为 False 时执行的代码
    代码块3
  • 执行逻辑 :从上到下判断条件,一旦某个条件为 True,执行对应的代码块后,整个条件语句结束;若所有条件都为 False,则执行 else 代码块(else 可选)。

二、具体使用场景

1. 单条件判断(仅 if)

当只需判断一个条件,满足时执行代码,不满足则跳过:

python 复制代码
age = 18
if age >= 18:
    print("已成年,可独立购票")  # 条件成立,执行此句

2. 二选一判断(if-else)

满足条件执行 A,不满足执行 B:

python 复制代码
score = 55
if score >= 60:
    print("考试及格")
else:
    print("考试不及格,需要补考")  # 条件不成立,执行此句

3. 多条件判断(if-elif-else)

有多个条件需要依次判断,适合分档场景(如成绩评级):

python 复制代码
score = 85
if score >= 90:
    print("优秀")
elif score >= 80:
    print("良好")  # 85 >=80 成立,执行此句
elif score >= 60:
    print("及格")
else:
    print("不及格")

4. 嵌套条件语句

条件内部再包含条件判断(注意缩进层级):

python 复制代码
num = 15
if num > 10:
    print("数字大于10")
    if num % 2 == 0:
        print("且是偶数")
    else:
        print("且是奇数")  # 15>10且是奇数,执行此句
else:
    print("数字小于等于10")

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

简洁版的 if-else,适合简单的二选一赋值场景:

python 复制代码
# 语法:结果1 if 条件 else 结果2
result = "及格" if score >= 60 else "不及格"

# 等价于:
if score >= 60:
    result = "及格"
else:
    result = "不及格"

示例:

python 复制代码
a, b = 5, 10
max_num = a if a > b else b
print(max_num)  # 输出:10

四、条件判断中的常见运算符

条件语句的"条件"本质是一个返回 True 或 False 的表达式,常用运算符:

类型 运算符 示例(结果为 bool)
比较运算符 ==(等于)、!=(不等) 3 == 5 → False;"a" != "b" → True
>、<、>=、<= 10 > 5 → True;7 <= 3 → False
逻辑运算符 and(与,全为真才真) (5>3) and (2>1) → True
or(或,有一个真就真) (5>8) or (2>1) → True
not(非,取反) not (5>3) → False

示例:

python 复制代码
# 逻辑运算符组合条件
age = 20
has_id = True
if age >= 18 and has_id:
    print("可进入网吧")  # 两个条件都满足,执行此句

五、注意事项

  1. 缩进规则 :if、elif、else 后的代码块必须缩进(通常 4 个空格),同一代码块缩进量需一致,否则会报错。

  2. 冒号结尾 :if、elif、else 语句必须以冒号 : 结尾,标志着代码块的开始。

  3. 非布尔值的条件判断 :Python 中,除了 False,以下值也会被视为"假"(False):

    • 数字 0、0.0
    • 空字符串 ""、空列表 []、空字典 {}、空元组 ()、None 其他值均视为"真"(True)。

    示例:

    python 复制代码
    s = ""
    if s:  # 空字符串视为False,不执行
        print("字符串非空")
    else:
        print("字符串为空")  # 执行此句

总结

条件语句是控制程序流程的核心工具,通过 if-elif-else 可实现多分支逻辑,嵌套使用能处理复杂场景,而三元运算符则适合简化简单的二选一赋值。多练习成绩判断、权限验证等场景,能快速掌握其用法。

相关推荐
2601_9669496539 分钟前
如何判断实时行情数据是否已经更新?从时间戳、交易时段到行情有效性
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
MoRanzhi120342 分钟前
106.正则问题(分治)
python·算法·正则表达式·蓝桥杯·递归·分治算法·字符串处理
Pingred1 小时前
我把一个私有化 RAG 系统真正跑通了:LocalRAG v0.1.0 发布
人工智能·python
Dmz丶1 小时前
前端转 AI 100 天 Day 24:API 测试——用 httpx + pytest 测 FastAPI
python
东莞市云毅网络有限公司1 小时前
监测问句清单去重:停用词表、数字归一与贪心聚类的参数取法
python·数据清洗·rag·企业知识库·文档解析
雪域迷影2 小时前
Python Django 7 小时课程
开发语言·python·django
量化吞吐机2 小时前
最高最低都一样,价格就同样集中吗
人工智能·python
FITA阿泽要努力2 小时前
如何调用 LLM 接口
python·api·agent
江湖中的阿龙2 小时前
大模型应用怎么做评测?从样本集、自动评分到上线回归的完整实战
人工智能·python·回归·大模型评测
雾游2 小时前
用上 uv 后,搭建 Python 项目终于顺手了:从安装到环境恢复,一篇讲清
python