3.python运算符
Python 提供了多种运算符,用于执行算术、比较、逻辑等各种操作。以下是 Python 中常见的运算符类型及其用法:
文章目录
- 1. 算术运算符
- 2. 比较运算符
- 3. 逻辑运算符
- 4. 赋值运算符
- 5. 位运算符
- 6. 成员运算符
- 7. 身份运算符
- 8. 运算符优先级
1. 算术运算符
算术运算符用于执行基本的数学运算。
| 运算符 | 描述 | 示例 |
|---|---|---|
+ | 加法 | x + y |
- | 减法 | x - y |
* | 乘法 | x * y |
/ | 除法(返回浮点数) | x / y |
// | 整除(返回整数商) | x // y |
% | 模(取余) | x % y |
** | 幂(指数) | x ** y |
示例:
x = 10
y = 3print(x + y) # 输出: 13
print(x - y) # 输出: 7
print(x * y) # 输出: 30
print(x / y) # 输出: 3.3333333333333335
print(x // y) # 输出: 3
print(x % y) # 输出: 1
print(x ** y) # 输出: 1000
2. 比较运算符
比较运算符用于比较两个值,并返回一个布尔值(True 或 False)。
| 运算符 | 描述 | 示例 |
|---|---|---|
== | 等于 | x == y |
!= | 不等于 | x != y |
> | 大于 | x > y |
< | 小于 | x < y |
>= | 大于或等于 | x >= y |
<= | 小于或等于 | x <= y |
示例:
x = 10
y = 3print(x == y) # 输出: False
print(x != y) # 输出: True
print(x > y) # 输出: True
print(x < y) # 输出: False
print(x >= y) # 输出: True
print(x <= y) # 输出: False
3. 逻辑运算符
逻辑运算符用于组合多个条件表达式,并返回一个布尔值。
| 运算符 | 描述 | 示例 |
|---|---|---|
and | 逻辑与(所有条件都为真时返回 True) | x > 0 and x < 10 |
or | 逻辑或(任意一个条件为真时返回 True) | x < 0 or x > 10 |
not | 逻辑非(取反) | not (x == y) |
示例:
x = 5
y = 3print(x > 0 and x < 10) # 输出: True
print(x < 0 or x > 10) # 输出: False
print(not (x == y)) # 输出: True
4. 赋值运算符
赋值运算符用于将值赋给变量。除了简单的 =,Python 还提供了复合赋值运算符,可以简化某些操作。
| 运算符 | 描述 | 等价于 |
|---|---|---|
= | 简单赋值 | x = 5 |
+= | 加法赋值 | x += 3 等价于 x = x + 3 |
-= | 减法赋值 | x -= 3 等价于 x = x - 3 |
*= | 乘法赋值 | x *= 3 等价于 x = x * 3 |
/= | 除法赋值 | x /= 3 等价于 x = x / 3 |
//= | 整除赋值 | x //= 3 等价于 x = x // 3 |
%= | 模赋值 | x %= 3 等价于 x = x % 3 |
**= | 幂赋值 | x **= 3 等价于 x = x ** 3 |
示例:
x = 5
x += 3 # x = x + 3
print(x) # 输出: 8x = 10
x //= 3 # x = x // 3
print(x) # 输出: 3
5. 位运算符
位运算符用于对二进制数进行按位操作。
| 运算符 | 描述 | 示例 |
|---|---|---|
& | 按位与 | x & y |
| ` | ` | 按位或 |
^ | 按位异或 | x ^ y |
~ | 按位非 | ~x |
<< | 左移 | x << n |
>> | 右移 | x >> n |
示例:
x = 6 # 二进制: 0110
y = 3 # 二进制: 0011print(x & y) # 输出: 2 (二进制: 0010)
print(x | y) # 输出: 7 (二进制: 0111)
print(x ^ y) # 输出: 5 (二进制: 0101)
print(~x) # 输出: -7 (二进制: 11111111...1010, 补码表示)
print(x << 1) # 输出: 12 (二进制: 1100)
print(x >> 1) # 输出: 3 (二进制: 0011)
6. 成员运算符
成员运算符用于检查某个值是否在序列(如字符串、列表、元组等)中。
| 运算符 | 描述 | 示例 |
|---|---|---|
in | 如果值在序列中则返回 True | 'a' in 'apple' |
not in | 如果值不在序列中则返回 True | 'b' not in 'apple' |
示例:
fruits = ["apple", "banana", "cherry"]print("apple" in fruits) # 输出: True
print("orange" not in fruits) # 输出: True
7. 身份运算符
身份运算符用于比较两个对象是否是同一个对象(即它们在内存中的地址是否相同)。
| 运算符 | 描述 | 示例 |
|---|---|---|
is | 如果两个对象是同一个对象则返回 True | x is y |
is not | 如果两个对象不是同一个对象则返回 True | x is not y |
示例:
x = [1, 2, 3]
y = [1, 2, 3]print(x is y) # 输出: False (虽然内容相同,但它们是不同的对象)
z = x
print(x is z) # 输出: True (x 和 z 是同一个对象)# 对于不可变对象,Python 可能会重用相同的对象
a = "hello"
b = "hello"
print(a is b) # 输出: True (Python 优化,字符串常量可能共享同一个对象)
8. 运算符优先级
Python 中的运算符有不同的优先级,决定它们在表达式中先计算哪个部分。以下是从高到低的优先级顺序:
- 括号
() - 指数
** - 正负号
+x,-x - 乘法、除法、取模、整除
*,/,%,// - 加法、减法
+,- - 位移
<<,>> - 按位与
& - 按位异或
^ - 按位或
| - 比较运算符
==,!=,>,<,>=,<= - 身份运算符
is,is not - 成员运算符
in,not in - 逻辑非
not - 逻辑与
and - 逻辑或
or - 赋值运算符
=,+=,-=,*=,/=,//=,%=,**=
示例:
x = 10 + 3 * 2 # 先计算乘法,再加法
print(x) # 输出: 16y = (10 + 3) * 2 # 先计算括号内的加法,再乘法
print(y) # 输出: 26
相关文章:
3.python运算符
Python 提供了多种运算符,用于执行算术、比较、逻辑等各种操作。以下是 Python 中常见的运算符类型及其用法: 文章目录 1. 算术运算符2. 比较运算符3. 逻辑运算符4. 赋值运算符5. 位运算符6. 成员运算符7. 身份运算符8. 运算符优先级 1. 算术运算符 算…...
【竞技宝】CS2-上海major:spirit力克MOUZ niko梦碎
北京时间2024年12月15日,CS2上海major正在如火如荼的进行中,昨日迎来两场半决赛MOUZ对阵spirit以及FAZE对阵G2。Spirit和MOUZ和各自赢下了自己的选图之后,spirit双子星在图三抗住压力帮助队伍杀入决赛。而G2和FAZE的比赛中,FAZE依然延续上一场的火热手感完全压制了G2,G2的明星选…...
【Leetcode 每日一题】3266. K 次乘运算后的最终数组 II
问题背景 给你一个整数数组 n u m s nums nums,一个整数 k k k 和一个整数 m u l t i p l i e r multiplier multiplier。 你需要对 n u m s nums nums 执行 k k k 次操作,每次操作中: 找到 n u m s nums nums 中的 最小 值 x x x&a…...
etcd集群常见日志
1、节点失去领导者 {"level":"info","ts":"2024-05-07T01:54:04.948Z","logger":"raft","caller":"etcdserver/zap_raft.go:77","msg":"raft.node: 9afce9447872453 lost le…...
【漫话机器学习系列】005.神经网络的结构(architecture on the neural network)
神经网络(Neural Network)是一种模拟人脑神经系统的计算模型,由大量相互连接的神经元(节点)组成,广泛应用于深度学习和机器学习领域。以下是神经网络的基本结构及关键组成部分。 1. 神经网络的基本组成 一…...
基于 Couchbase 数据仓库元数据管理的可行性方案
在大数据体系中,元数据管理是数据治理的关键一环。以下是一套元数据管理的可行性方案,适合你的当前架构设计(基于 Couchbase 数据仓库)并支持高效管理数据的分层与结构。 1. 元数据管理的目标 统一数据管理:清晰描述 …...
SpringBoot:快速构建微服务应用
一、SpringBoot简介 什么是SpringBoot 是由Pivotal团队提供的快速开发框架。它基于Spring框架,可以用于快速构建微服务应用程序。SpringBoot提供了一种快速、便捷的方式来启动和配置一个基于Spring的应用程序,它封装了很多常用的配置,简化了开…...
汽车嵌入式软件构建高效技术团队的全面思考
在汽车嵌入式软件开发领域,构建一支高效的通用技术团队至关重要。这类团队负责为各种项目提供可复用、标准化的技术基石,从而提高开发效率、降低成本并确保产品质量。构建这样的团队需要从技术能力、角色分工、标准化与复用、流程管理与质量保证、工具和…...
【跨库查询、多库查询】.NET开源 ORM 框架 SqlSugar 系列
文章目录 一、跨库方式1:跨库导航二、手动跨库查询三、同服务器:自动查询跨库查询3.1 Mysql和SqlServer自动3.2 自动: PgSql跨Scheme查询3.3 其他库同服务器 四、跨服务器:自动跨库查询4.1 配置SqlServer dblink4.2 配置 Oracle dblink4.3 配…...
智能人体安全防护:3D 视觉技术原理、系统架构与代码实现剖析
随着工业化程度的提高,生产安全已成为企业关注的重点。尤其是在一些存在禁区的工业厂区和车间,人员误入或违规进入将带来严重的安全隐患。为了解决这一问题,迈尔微视推出了智能人体安全检测解决方案,为企业提供全方位的人员安全监…...
第24周:文献阅读
目录 摘要 Abstract 一、现有问题 二、提出方法 三、创新点 模型结构创新 强化学习与GAN结合 属性特征与通顺性优化 四、方法论 生成对抗网络(GAN) 强化学习(RL) 模型组件 五、实验研究 数据集 数据预处理 评价指…...
yolov8 转华为昇腾om脚本
目录 yolov8 转华为昇腾 om脚本 测试ok 推理demo: yolov8 转华为昇腾 om脚本 测试ok import sys import osos.chdir(os.path.dirname(os.path.abspath(__file__)))import torchcurrent_dir = os.path.dirname(os.path.abspath(__file__))paths = [os.path.abspath(__file__)…...
分布式事物XA、BASE、TCC、SAGA、AT
分布式事务——Seata 一、Seata的架构: 1、什么是Seata: 它是一款分布式事务解决方案。官网查看:Seata 2.执行过程 在分布式事务中,会有一个入口方法去调用各个微服务,每一个微服务都有一个分支事务,因…...
域名信息收集(小迪网络安全笔记~
附:完整笔记目录~ ps:本人小白,笔记均在个人理解基础上整理,若有错误欢迎指正! 2.1 域名信息收集 引子:上一章介绍了服务器的信息收集。本篇则介绍在面对存在Web资产企业时,其域名信息该如何收…...
力扣-图论-13【算法学习day.63】
前言 ###我做这类文章一个重要的目的还是给正在学习的大家提供方向和记录学习过程(例如想要掌握基础用法,该刷哪些题?)我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非…...
【设计模式】如何用C++实现观察者模式【发布订阅机制】
【设计模式】如何用C实现观察者模式【发布订阅机制】 一、问题背景 代码质量影响生活质量。最近工作中频繁接触各种设计模式,深刻体会到优秀的设计模式不仅能显著降低后续维护的压力,还能提升开发效率。观察者模式作为一种降低耦合度、提高扩展性的利器…...
【LC】2717. 半有序排列
题目描述: 给你一个下标从 0 开始、长度为 n 的整数排列 nums 。 如果排列的第一个数字等于 1 且最后一个数字等于 n ,则称其为 半有序排列 。你可以执行多次下述操作,直到将 nums 变成一个 半有序排列 : 选择 nums 中相邻的两…...
AI智算-k8s部署大语言模型管理工具Ollama
文章目录 简介k8s部署OllamaOpen WebUI访问Open-WebUI 简介 Github:https://github.com/ollama/ollama 官网:https://ollama.com/ API:https://github.com/ollama/ollama/blob/main/docs/api.md Ollama 是一个基于 Go 语言开发的可以本地运…...
CloudberryDB(二) 演化路线图
CloudberryDB 制定了演化路线图(https://github.com/orgs/cloudberrydb/discussions/369)并在逐步改进,这是 Cloudberry Database 发挥独特价值之处。 计划、正在进行或已完成的一些工作。 支持轻松升级 PostgreSQL 内核版本。 原有 Greenp…...
《拉依达的嵌入式\驱动面试宝典》—C/CPP基础篇(二)
《拉依达的嵌入式\驱动面试宝典》—C/CPP基础篇(二) 你好,我是拉依达。 感谢所有阅读关注我的同学支持,目前博客累计阅读 27w,关注1.5w人。其中博客《最全Linux驱动开发全流程详细解析(持续更新)-CSDN博客》已经是 Linux驱动 相关内容搜索的推荐首位,感谢大家支持。 《拉…...
newTimer嵌入式定时器库:跨平台非阻塞延时与状态机设计
1. newTimer 定时器库深度解析:跨平台嵌入式精准延时与状态管理方案1.1 库定位与工程价值newTimer是一个轻量级、高度可移植的 C 定时器抽象库,专为资源受限的嵌入式微控制器设计。其核心价值不在于替代硬件定时器外设,而在于提供统一、语义清…...
【数据结构】线索二叉树之中序遍历线索化详解与实现
在二叉树的遍历过程中,我们会发现大量的空指针域被浪费,而线索二叉树的核心思想就是利用这些空指针,将其指向节点的前驱或后继节点,从而实现二叉树的非递归遍历无需借助栈,提升遍历效率。本文将详细讲解中序遍历线索化…...
创意随笔:智能转录便携终端
创意随笔|智能转录便携终端 项目构想 核心亮点 以独立麦克风拾音为核心入口,实现全链路闭环实时翻译 从收音、ASR 识别、翻译、TTS 合成到语音播放/耳机输出,全程不依赖手机或电脑算力,自成一套完整翻译系统,真正做到端…...
【图像加密】基于 AES算法的图像位平面加密解密算法附Matlab代码
✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…...
氢能多能利用调度系统 -NSGA-II多目标优化,实现氢能-电能-交通多能耦合系统的24小时优化调度,包含电解制氢、可再生能源、储氢、掺氢燃气轮机、氢燃料电池和氢电动汽车等关键设备研究(Matlab)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
2026届学术党必备的AI辅助写作工具推荐榜单
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 核心在于模拟人类写作自然特征,以此来降低人工智能生成文本的检测率。其一&#…...
计算机毕业设计:Python汽车销量全栈分析系统 Flask框架 可视化 机器学习 AI 大模型 大数据(建议收藏)✅
1、项目介绍 技术栈:Python语言、Flask框架、ECharts可视化库、MySQL数据库、机器学习算法 功能模块:数据概况展示模块多维度可视化分析模块销量预测模块生产计划辅助模块系统管控模块 项目介绍:本项目为汽车销量可视化分析与预测系…...
论文AI率过高怎么降?实测有效方法+免费工具推荐
当前不少学生和科研人员在写论文时都遇到过AIGC率超标的问题,不用焦虑,只要找对方法,就能有效消除AI生成痕迹,顺利通过学校的AIGC检测。 一、AIGC检测的核心逻辑是什么? 很多人会疑惑:明明是自己逐字敲的论…...
基于单片机的全自动咖啡机控制系统设计
一、摘要 全自动咖啡机控制系统控制系统对于现今的日常家居生活和商业模式售卖都有着重大的影响力,随着社会快节奏的发展,传统的人工冲泡模式效率远远满足不了人们的日常需求,并且在冲调多口味咖啡方面,也没有良好的原料精准配比。…...
【Java】从源码深入理解 Stack
从源码深入理解 StackStack的整体架构Stack的成员变量Stack的构造函数Stack的常用方法:源码解读压栈:push()出栈:pop()获取栈顶元素:peek()判断是否为空:empty()查找元素:search()存储的元素个数࿱…...
