当前位置: 首页 > news >正文

python 常用条件判断语句用法

十分想念顺店杂可。。。

在 Python 中,条件判断语句用于根据不同的条件执行不同的代码块,核心关键字包括ifelif(else if 的缩写)和else。以下是常用条件判断语句的用法详解:

1. 基本if语句

当条件为True时,执行缩进的代码块(Python 用缩进来区分代码块,通常是 4 个空格)。

语法:

if 条件表达式:# 条件为True时执行的代码语句1语句2

示例:

age = 18
if age >= 18:print("已成年")  # 输出:已成年

2. if-else语句

当条件为True时执行if块,否则执行else块(二选一)。

语法:

if 条件表达式:# 条件为True时执行语句1
else:# 条件为False时执行语句2

示例:

score = 59
if score >= 60:print("及格")
else:print("不及格")  # 输出:不及格

3. if-elif-else语句

用于多条件判断,依次检查每个if/elif的条件,只要有一个条件为 True,就执行对应代码块并结束判断;如果所有条件都为 False,则执行else块(else可选)。

语法:

if 条件1:# 条件1为True时执行语句1
elif 条件2:# 条件1为False,条件2为True时执行语句2
elif 条件3:# 前两个条件为False,条件3为True时执行语句3
else:# 所有条件都为False时执行语句4

示例:

score = 85
if score >= 90:print("优秀")
elif score >= 80:print("良好")  # 输出:良好(因为85满足>=80,且前面的>=90不满足)
elif score >= 60:print("及格")
else:print("不及格")

4. 嵌套条件判断

ifelifelse的代码块中,还可以嵌套另一个条件判断语句。

示例:

age = 20
has_id = Trueif age >= 18:print("已成年")if has_id:print("可以进入网吧")  # 输出:已成年 + 可以进入网吧else:print("请出示身份证")
else:print("未成年,禁止进入")

5. 常用判断条件(表达式)

条件判断的核心是 “条件表达式”,其结果为布尔值(True/False)。常见的表达式类型:

  • 比较运算符==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)

    a = 5
    print(a == 5)  # True
    print(a != 3)  # True
    
  • 逻辑运算符and(与,都为真才真)、or(或,有一个为真就真)、not(非,取反)

    age = 20
    score = 80
    if age >= 18 and score >= 60:print("符合条件")  # 输出:符合条件
    
  • 成员运算符in(在容器中)、not in(不在容器中)

    fruits = ["apple", "banana"]
    if "apple" in fruits:print("苹果在列表中")  # 输出:苹果在列表中
    

  • 身份运算符is(内存地址相同)、is not(内存地址不同)
    (注意:==判断值是否相等,is判断是否为同一个对象)

    a = [1, 2]
    b = a
    c = [1, 2]
    print(a is b)  # True(a和b指向同一列表)
    print(a == c)  # True(值相等)
    print(a is c)  # False(不同对象)
    

注意事项

  1. 条件表达式后必须加冒号:
  2. 代码块的缩进必须一致(建议用 4 个空格),否则会报错。
  3. 避免将赋值运算符=误用作比较运算符==(常见错误)。
  4. elifelse必须跟在if后面,不能单独使用。

通过这些条件判断语句,可以实现程序的分支逻辑,让代码根据不同情况执行不同操作。

http://www.dtcms.com/a/319637.html

相关文章:

  • day44 力扣1143.最长公共子序列 力扣1035.不相交的线 力扣53. 最大子序和 力扣392.判断子序列
  • 关于时钟门控ICG的一切(与门及或门门控)
  • [论文阅读] 人工智能 + 软件工程 | 大型语言模型与静态代码分析工具:漏洞检测能力大比拼
  • 分布式事务与分布式锁
  • PCB布线
  • 大队列CT胰腺癌PANDA 模型 医生结合AI后,病灶检测灵敏度提升 8.5%,胰腺癌识别灵敏度提升 20.5%,住院医师性能接近专家水平
  • 补充一种激活函数:GeGLU
  • 关于AI应用案例计算机视觉、自然语言处理、推荐系统和生成式AI四大领域的详细技术分析。
  • 数学建模——粒子群算法
  • Gradle 全解析:Android 构建系统的核心力量
  • JavaScript构建工具
  • CSS overscroll-behavior:解决滚动穿透的 “边界控制” 专家
  • 《Day3-PyTorch 自动微分入门:从计算图到梯度下降的实践指南》
  • Redis中间件(三):Redis存储原理与数据模型
  • Dokcer创建中间件环境
  • LeetCode:347.前K个高频元素
  • 手写数字识别实战 - 从传统机器学习到深度学习
  • 13-netty基础-手写rpc-消费方生成代理-05
  • Qt——入门
  • 数据赋能(386)——数据挖掘——迭代过程
  • Spring、Spring MVC、MyBatis 和 Spring Boot的关系
  • Ethereum:如何优雅部署 NPM 包中的第三方智能合约?
  • LoadBalancingSpi
  • Beelzebub靶机
  • MyCAT实战环节
  • 动手学深度学习13.10. 转置卷积 -笔记练习(PyTorch)
  • 在新建word中使用以前文件中的列表样式
  • Python调用Shell指令的方法与实践
  • 深海中的类型晨曦
  • Jmeter使用第一节-认识面板(Mac版)