python - 条件判断

在 Python 中,条件判断 是通过 ifelifelse 语句实现的,用于根据布尔值(True/False)控制程序执行流程。以下是详细总结和示例:


1. 基本语法

(1) if 语句

python 复制代码
if 条件:
    # 条件为 True 时执行的代码

示例

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

(2) if-else 语句

python 复制代码
if 条件:
    # 条件为 True 时执行
else:
    # 条件为 False 时执行

示例

python 复制代码
age = 16
if age >= 18:
    print("已成年")
else:
    print("未成年")  # 输出:未成年

(3) if-elif-else 语句

bash 复制代码
python
if 条件1:
    # 条件1为 True 时执行
elif 条件2:
    # 条件2为 True 时执行
else:
    # 其他情况执行

示例

bash 复制代码
python
score = 85
if score >= 90:
    print("优秀")
elif score >= 60:
    print("及格")  # 输出:及格
else:
    print("不及格")

2. 高级用法

(1) 条件表达式(三元运算)

python 复制代码
值1 if 条件 else 值2

示例

python 复制代码
age = 20
status = "成年" if age >= 18 else "未成年"
print(status)  # 输出:成年

(2) 嵌套条件判断

python 复制代码
num = 10
if num > 0:
    if num % 2 == 0:
        print("正偶数")  # 输出:正偶数
    else:
        print("正奇数")
else:
    print("非正数")

(3) 逻辑运算符组合条件

  • and:所有条件为 True 时返回 True
  • or:任意条件为 True 时返回 True
  • not:取反。

示例

python 复制代码
age = 25
is_student = False
 
if age >= 18 and not is_student:
    print("成年人且非学生")  # 输出:成年人且非学生
 
if age < 18 or is_student:
    print("未成年或是学生")  # 不执行

3. 特殊场景

(1) 成员资格测试

innot in 检查元素是否在序列中:

python 复制代码
fruits = ["apple", "banana", "orange"]
if "apple" in fruits:
    print("有苹果")  # 输出:有苹果
 
if "pear" not in fruits:
    print("没有梨")  # 输出:没有梨

(2) 真值测试

Python 中以下值被视为 False,其余为 True

  • FalseNone0""(空字符串)、[](空列表)、{}(空字典)。

示例

python 复制代码
if "":
    print("不会执行")
else:
    print("空字符串是 False")  # 输出

4. 常见错误

(1) 缩进错误

python 复制代码
if True:
print("缩进错误")  # IndentationError

正确写法

python 复制代码
if True:
    print("正确缩进")

(2) 混淆 ===

python 复制代码
if age = 18:  # SyntaxError(赋值不能用于条件)
    print("错误")

正确写法

python 复制代码
if age == 18:  # 比较用 ==
    print("正确")

总结

  • 基本结构ifelifelse 控制分支逻辑。

  • 逻辑组合 :用 andornot 组合条件。

  • 简洁写法 :三元运算 x if cond else y

  • 注意事项

    • 缩进必须一致(通常 4 空格)。
    • 比较用 ==,赋值用 =
    • 空值、0False 等会被视为 False

match

在 Python 3.10 及以上版本中,match-case (模式匹配)是一种更强大的条件判断结构,类似于其他语言中的 switch-case,但功能更强大,支持多种数据类型的模式匹配(如字符串、数字、列表、字典、类实例等)。


1. 基本语法

python 复制代码
match 变量:
    case 模式1:
        # 匹配模式1时执行
    case 模式2:
        # 匹配模式2时执行
    case _:
        # 默认情况(类似 else)
相关推荐
艾莉丝努力练剑6 小时前
【Python基础:语法第一课】Python 基础语法详解:变量、类型、动态特性与运算符实战,构建完整的编程基础认知体系
大数据·人工智能·爬虫·python·pycharm·编辑器
gCode Teacher 格码致知6 小时前
Python基础教学:如何拼接字符串?-由Deepseek产生
python
还债大湿兄6 小时前
阿里通义千问调用图像大模型生成轮动漫风格 python调用
开发语言·前端·python
blank@l6 小时前
python测开小工具--日志查询分析工具
python·python接口自动化测试基础·python测试开发·日志查询分析·日志分析统计查询·软件测试工具·argparse模块
hu_nil6 小时前
LLMOps-第十三周
python·vllm
空影星7 小时前
轻量日记神器RedNotebook,高效记录每一天
python·数据挖掘·数据分析·音视频
搬砖ing换来金砖7 小时前
Python入门-Task02
开发语言·python
databook7 小时前
告别盲人摸象,数据分析的抽样方法总结
后端·python·数据分析
全栈陈序员7 小时前
【Python】基础语法入门(九)—— 代码规范、调试技巧与性能初探
开发语言·python·代码规范
nvd117 小时前
解决 Gemini API 连接卡住问题的方案
python