python条件

  • 条件语句

    • if语句

    • if...else语句

    • if...elif...else语句

    • 嵌套

    • is

      • is 是一个身份运算符,用于比较两个对象的身份,即它们在内存中的地址是否相同。这与比较两个对象是否相等的 == 运算符不同。== 运算符比较的是两个对象的值是否相等。
      • 比较对象

      • 比较基本数据类型
        • 对于基本数据类型(如整数、字符串和布尔值),is 运算符可以用来检查两个变量是否引用了同一个对象。但请注意,Python 对小整数和短字符串有缓存机制,所以以下情况可能发生:

      • 检查是否为 None(空)
    • 断言

      • 断言(Assertion)是一种检查条件是否为真的简单方式。如果条件为假,Python会抛出一个AssertionError异常。断言通常用于测试和调试阶段,以确保代码中的某些条件始终为真。
      • assert 条件 , ["产生异常,抛出的文本"] //条件为假时抛出异常

源码

"""
在Python中,您不需要显式声明变量的数据类型,
因为Python是一种动态类型的语言。
这意味着Python解释器会在运行时自动确定变量的数据类型。
"""

# 1 被视为 True 0 被视为 False
condition = 1
if condition:
    # 当条件为真时执行的代码
    print(condition, "真\n")

condition = 0
if condition:
    # 当条件为真时执行的代码
    print(condition, "真\n")
else:
    # 当条件为假时执行的代码
    print(condition, "假\n")


condition1 = 0
condition2 = 1

if condition1:
    # 当条件1为真时执行的代码
    print(condition1, "1真\n")
elif condition2:
    # 当条件1为假且条件2为真时执行的代码
    print(condition2, "2真\n")
else:
    # 当以上条件都为假时执行的代码
    print(condition, "都假\n")

x = 10
y = 20

if x > 5:
    print("x 大于 5")
    if y > 15:
        print("y 也大于 15")
    else:
        print("y 不大于 15")
else:
    print("x 不大于 5")

a = [1, 2, 3]
b = a
print(a is b)  # 输出 True,因为 a 和 b 引用的是同一个列表对象

a = [1, 2, 3]
b = [1, 2, 3]
print(a is b)  # 输出 False,因为 a 和 b 是两个不同的列表对象


a = 256
b = 256
print(a is b)  # 输出 True,因为 Python 对小整数进行了缓存

c = 257
d = 257
print(c is d)  # 输出 False,因为这两个整数超出了缓存范围

e = "hello"
f = "hello"
print(e is f)  # 输出 True,因为字符串 "hello" 被缓存了

g = ""
h = ""
print(g is h)  # 输出 True,空字符串被缓存

a = None
print(a is None)  # 输出 True

x = 0
try:
    assert x > 0, "x 应该大于 0"
except AssertionError as e:
    print(e)


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/799636.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024-07-12 Unity AI状态机1 —— 框架介绍

文章目录 1 有限状态机2 状态机实现框架2.1 StateMachine2.2 BaseState2.3 ...State2.4 IAIObject 3 框架类图 本文章参考 B 站唐老狮 2023 年直播内容。点击前往唐老狮 B 站主页。 1 有限状态机 ​ 有限状态机(Finite - State Machine,FSM&#xff09…

linux的学习(四):磁盘,进程,定时,软件包的相关命令

简介 关于磁盘管理,进程管理,定时任务,软件包管理的命令的使用 磁盘管理类命令 du du 目录名: 查看文件和目录占用的磁盘空间 参数: -h:可以看到大小的单位,g,mb-a:还可以看到文…

日前光伏功率曲线预测

《利用 2DGRA-BiLSTM 模型的日前光伏功率曲线预测方法》 利用2DGRA实现最佳历史相似日数据的获取,根据日功率曲线的波动性将总数据分为3类(晴空条件、轻度非晴空条件和重度非晴空条件),根据3种分类&#x…

SpringCloud架构师面试

一、微服务是什么 1、基本概念 微服务是一种架构风格(区别于单体架构、垂直架构、分布式架构、SOA架构),应用程序被划分为更小的、流程驱动的服务。 2、微服务的特征 轻量化:将复杂的系统或者服务进行纵向拆分,每个…

【自然语言处理】面向新冠肺炎的社会计算应用

面向新冠肺炎的社会计算应用 1 任务目标 1.1 案例简介 新冠肺炎疫情牵动着我们每一个人的心,在这个案例中,我们将尝试用社会计算的方法对疫情相关的新闻和谣言进行分析,助力疫情信息研究。本次作业为开放性作业,我们提供了疫情…

计算机网络之广域网

广域网特点: 主要提供面向通信的服务,支持用户使用计算机进行远距离的信息交换。 覆盖范围广,通信的距离远,需要考虑的因素增多, 线路的冗余、媒体带宽的利用和差错处理问题。 由电信部门或公司负责组建、管理和维护,并向全社会…

Access denied for user ‘root‘@‘localhost‘ (using password: YES)解决办法

在Spring配置数据源时,当使用Spring容器加载druid.properties数据库连接池配置文件时,容易碰到create connection SQLException, url: jdbc:mysql://127.0.0.1:3306/mydbs, errorCode 1045, state 28000 java.sql.SQLException: Access denied for user …

在JavaScript中,什么是解构赋值(destructuring assignment)?

聚沙成塔每天进步一点点 本文回顾 ⭐ 专栏简介在JavaScript中,什么是解构赋值(destructuring assignment)?1. 引言2. 解构赋值的概念3. 数组解构赋值3.1 基本语法3.2 跳过元素3.3 默认值3.4 交换变量值 4. 对象解构赋值4.1 基本语…

springboot系列教程(一):简介与入门案例(含源码)

一、SpringBoot简介 SpringBoot继承了Spring优秀的基因,上手难度小简化配置,提供各种默认配置来简化项目配置内嵌式容器简化Web项目,简化编码 Spring Boot 则会帮助开发着快速启动一个 web 容器,在 Spring Boot 中,只…

React学习笔记03-----手动创建和运行

一、项目创建与运行【手动】 react-scripts集成了webpack、bable、提供测试服务器 1.目录结构 public是静态目录,提供可以供外部直接访问的文件,存放不需要webpack打包的文件,比如静态图片、CSS、JS src存放源码 (1&#xff09…

QT多线程下,信号槽分别在什么线程中执行,如何控制?

可以通过connect的第五个参数进行控制信号槽执行时所在的线程 connect有几种连接方式,直接连接、队列连接和 自动连接 直接连接(Qt::DirectConnection):信号槽在信号发出者所在的线程中执行 队列连接(Qt::QueuedConn…

whereis命令是 Linux 和类 Unix 系统中的一个命令行工具,用于定位二进制程序、源代码和手册页(man pages)的位置

文章目录 1、whereis2、实例 1、whereis whereis 命令是 Linux 和类 Unix 系统中的一个命令行工具,用于定位二进制程序、源代码和手册页(man pages)的位置。当你想要快速找到某个程序或命令的安装位置时,whereis 命令会非常有用。…

关于无法定位程序输入点 SetDefaultDllDirectories于动态链接库KERNEL32.dll 上 解决方法

文章目录 1. ERNEL32.dll 下载2. 解决方法 👍 个人网站:【 洛秋小站】 1. ERNEL32.dll 下载 Windows 7 在安装postman时报错缺少动态链接库,提示缺少.NET Framework,这是因为本地缺少相应的dll文件导致的,这时就需要下载ERNEL32.dll文件,在解…

MySQl高级篇-查询优化篇

SQL性能分析 SQL性能下降原因: 查询语句写的烂索引失效(数据变更)关联查询太多join(设计缺陷或不得已的需求)服务器调优及各个参数设置(缓冲、线程数等) SQL调优过程: 观察&…

【大语言模型】私有化搭建-企业知识库-知识问答系统

下面是我关于大语言模型学习的一点记录 目录 人工智能学习路线 MaxKB 系统(基于大语言模型的知识问答系统) 部署开源大语言模型LLM 1.CPU模式(没有好的GPU,算力和效果较差) 2.GPU模式(需要有NVIDIA显卡支持) Ollama网络配置 Ollama前…

nodejs安装部署运行vue前端项目

文章目录 1.安装nodejs2.安装Vue CLI1.配置npm镜像源:2.安装Vue CLI:3.创建Vue项目4.启动Vue项目5.Express 1.安装nodejs Node.js 是一个免费、开源、跨平台的 JavaScript 运行时环境,它让开发人员能够创建服务器、Web 应用、命令行工具和脚…

硬件基础学习笔记

关于硬件基础的知识整理 三极管(两个PN节组成的器件)MOSFET,场效应管(Field Effect Transistor)1、增强型场效应管符号:2、开关特性: 对于一些硬件知识,容易忘记需要反复记忆&#x…

【杰理蓝牙开发】AC632 开发板烧录实例

AC632 开发板烧录实例 0. 个人简介 && 授权须知1. 硬件板卡介绍2. 代码烧录2.1 使用USB接口烧录2.2 使用串口烧录 3. 为什么要用烧录器供电? 0. 个人简介 && 授权须知 📋 个人简介 💖 作者简介:大家好&#xff0c…

量化投资基础(一)之Black-Litterman模型

点赞、关注,养成良好习惯 Life is short, U need Python 量化投资基础系列,不断更新中 1. 投资组合收益率与风险 假设市场有 N N N 个资产,其随机收益率分别为 R 1 , R 2 , … , R N R_1,R_2,\dots,R_N R1​,R2​,…,RN​ ,对应…

【香橙派 AIpro测评:探索高效图片分类项目实战】

前言 最近入手了一块香橙派 AIpro开发板,在使用中被它的强大深深震撼,有感而发写下这篇文章。 本文旨在深入探讨OrangePi AIpro的各项性能,从硬件配置、软件兼容性到实际应用案例,全方位解析这款设备如何在开源社区中脱颖而出&am…