萌新学 Python 之运算符
Python 中运算符包括:算术运算符、比较运算符、逻辑运算符、赋值运算符、位运算符、海象运算符
算术运算符:加 + 减 - 乘 * 除 / 取整 // 求余 % 求幂 **
注意:取整时,一正一负整除,向下取整
比如 5 // -2 实际上是 -2.5 向下取整,结果为 -3
比较运算符:
大于 > 小于 < 大于等于 >= 小于等于 <= 等于 == 不等于 != in 集合 is(比较的是内存地址)
比较运算符返回的是布尔值 True、False
比如用 is 判断相同字符串内存地址是否相同,先给字符串赋值到某地址,再从某地址中找到该字符串,所以是相等的
逻辑运算符:not 非、and 与、or 或
and:当多个条件同时为 True 时,结果为 True,否则为 False
or:当多个条件同时为 False 时,结果为 False,否则为 True
not:条件为 True,结果为 False,反之,条件为 False,结果为 True
注意:优先级 not > and > or
赋值运算符:用于变量赋值
1.简单赋值,直接使用等号,比如 name = 'zhangsan'
2.算术赋值:+= -= *= /= //= %= **=
先进行算术运算,再进行赋值
链式赋值:赋值后,变量的内存地址是相同的,可变数据类型和不可变数据类型一样
a = b = c = 1 # 链式赋值
print(a is c, id(a), id(b)) # Truelist1 = [1, 2, 3] # 可变数据类型,值相同,内存地址不同
list2 = [1, 2, 3]
print(list1 is list2, id(list1), id(list2)) # Falsex = y = [1, 2, 3] # 链式赋值
print(x is y, id(x), id(y)) # True
结果如下:

解包赋值:经常用在变量交换时
a, b = 1, 2 # a = 1, b = 2
a, b = b, a # a = b = 2, b = a = 1 变量交换
print(a, b) # a = 2, b = 1
位运算:把数值转为二进制进行计算
先进行位运算,再进行赋值
位赋值:>>= 按位右移 <<= 按位左移 &= 按位与 |= 按位或 ^= 按位异 ~ 按位非
>> 按位右移,低位舍去,高位补零
<< 按位左移,低位补零,高位保留
(先转成二进制)
# 右移两位
print(10 >> 2) # 1010 -> 0010(末尾两位1和0舍去,前面两位补零) 结果为2
# 左移两位
print(10 << 2) # 1010 -> 101000(末尾两位补零,前面不变) 结果为40
& 按位与:位同时为 1,返回 1,否则返回 0
| 按位或:位同时为 0,返回 0,否则返回 1
^ 按位异:位的值不同返回 1,否则返回 0
(两个二进制上下对比)
# 0010 2
# 1010 10
print(2 & 10) # 0010 2 按位与
print(2 | 10) # 1010 10 按位或
print(2 ^ 10) # 1000 8 按位异
比如 2 的二进制是 0010
10 的二进制是 1010
按位与 & 两者比较,位数同时为 1 结果为 1,同时为 0 或者一个 1 一个 0,结果为 0,所以是 0010,结果输出是 2
(同时为真)
按位或 | 两者比较,位数同时为 0 结果为 0,同时为 1 或者一个 1 一个 0,结果为 1,所以是1010,结果输出是 10
(同时为假)
按位异 ^ 两者比较,位数相同为 0,不同为 1,所以是 1000,结果输出是 8
~ 按位非:取反,1 和 0 互换,正负互换
~ 按位非的通用规则:-(数值) - 1
print(~ 10) # -(10) - 1 = -11
print(~ -2) # -(-2) - 1 = 1
海象运算(海象表达式):主要用在 if 条件中
格式:变量 := 表达式
说明:将表达式的结果返回给变量
print(str_len := len(input('输入字符串获取长度:')))
(可以是任意值,如果是比较运算返回的就是布尔值)
详细介绍如下:

相关文章:
萌新学 Python 之运算符
Python 中运算符包括:算术运算符、比较运算符、逻辑运算符、赋值运算符、位运算符、海象运算符 算术运算符:加 减 - 乘 * 除 / 取整 // 求余 % 求幂 ** 注意:取整时,一正一负整除,向下取整 比如 5 // …...
嵌入式知识点总结 Linux驱动 (五)-linux内核
针对于嵌入式软件杂乱的知识点总结起来,提供给读者学习复习对下述内容的强化。 目录 1.内核镜像格式有几种?分别有什么区别? 2.内核中申请内存有哪几个函数?有什么区别? 3.什么是内核空间,用户空间&…...
zabbix7 配置字体 解决中文乱码问题(随手记)
目录 问题网传的方法(无效)正确的修改方式步骤 问题 zabbix 最新数据 中,图标的中文显示不出。 网传的方法(无效) 网传有一个方法:上传字体文件到/usr/share/zabbix/assets/fonts;修改/usr/…...
预测不规则离散运动的下一个结构
有一个点在19*19的平面上运动,运动轨迹为 一共移动了90步,顺序为 y x y x y x 0 17 16 30 10 8 60 15 15 1 3 6 31 10 7 61 14 15 2 12 17 32 9 9 62 16 15 3 4 12 33 10 9 63 18 15 4 3 18 34 15 12 6…...
CTFSHOW-WEB入门-命令执行29-32
题目:web 29 题目:解题思路:分析代码: error_reporting(0); if(isset($_GET[c])){//get一个c的参数$c $_GET[c];//赋值给Cif(!preg_match("/flag/i", $c)){eval($c);//if C变量里面没有flag,那么就执行C…...
SQL Server 建立每日自动log备份的维护计划
SQLServer数据库可以使用维护计划完成数据库的自动备份,下面以在SQL Server 2012为例说明具体配置方法。 1.启动SQL Server Management Studio,在【对象资源管理器】窗格中选择数据库实例,然后依次选择【管理】→【维护计划】选项࿰…...
doris:HLL
HLL是用作模糊去重,在数据量大的情况性能优于 Count Distinct。HLL的导入需要结合hll_hash等函数来使用。更多文档参考HLL。 使用示例 第 1 步:准备数据 创建如下的 csv 文件:test_hll.csv 1001|koga 1002|nijg 1003|lojn 1004|lofn …...
双层Git管理项目,github托管显示正常
双层Git管理项目,github托管显示正常 背景 在写React项目时,使用Next.js,该项目默认由git托管。但是我有在项目代码外层记笔记的习惯,我就在外层使用了git托管。 目录如下 code 层内也有.git 文件,对其托管。 我没太在意&…...
准备知识——旋转机械的频率和振动基础
旋转频率,也称为转速或旋转速率(符号ν,小写希腊字母nu,也作n),是物体绕轴旋转的频率。其国际单位制单位是秒的倒数(s −1 );其他常见测量单位包括赫兹(Hz)、每秒周期数(cps) 和每分钟转数(rpm)…...
知识库管理驱动企业知识流动与工作协同创新模式
内容概要 知识库管理在现代企业中扮演着至关重要的角色,其价值不仅体现在知识的积累,还在于通过优质的信息流动促进协作与创新。有效的知识库能够将分散的信息整合为有序、易于访问的资源,为员工提供实时支持,进而提升整体工作效…...
CMake常用命令指南(CMakeList.txt)
CMakeList从入门到精通的文章有很多不再赘述( 此处附带一篇优秀的博文链接:一个简单例子,完全入门CMake语法与CMakeList编写 )。 本文主要列举 CMake 中常用命令的详细说明、优缺点分析以及推荐做法,以更好地理解和灵…...
【回溯+剪枝】找出所有子集的异或总和再求和 全排列Ⅱ
文章目录 1863. 找出所有子集的异或总和再求和解题思路:子集问题解法(回溯 剪枝)47. 全排列 II解题思路:排序 回溯 剪枝 1863. 找出所有子集的异或总和再求和 1863. 找出所有子集的异或总和再求和 一个数组的 异或总和 定义为…...
中国技术突破对国际格局的多维影响与回应
链接地址: https://download.csdn.net/download/wanggang130532/90323798https://download.csdn.net/download/wanggang130532/90323798...
【漫话机器学习系列】068.网格搜索(GridSearch)
网格搜索(Grid Search) 网格搜索(Grid Search)是一种用于优化机器学习模型超参数的技术。它通过系统地遍历给定的参数组合,找出使模型性能达到最优的参数配置。 网格搜索的核心思想 定义参数网格 创建一个包含超参数值…...
元宇宙下的Facebook:虚拟现实与社交的结合
随着科技的不断进步,虚拟现实(VR)技术逐渐从科幻走入现实,成为人们探索未来社交方式的重要工具。在这一浪潮中,Facebook(现为Meta)作为全球领先的社交平台,正在积极布局虚拟现实和元…...
记忆力训练day08
写作头脑风暴训练 1 集体的头脑风暴: 2 一个人的头脑风暴 没事,你说老师我还没有摸到门道,你去做,做的时候你就会知道什么叫做头脑风暴。记住,不要用脑子就在感觉里面,你究竟想给人呈现一种什么样的文章&am…...
崇州市街子古镇正月初一繁华剪影
今天是蛇年正月初一,下午笔者步出家门,逛到了崇州市街子古镇井水街,想看看景象如何。结果看到的是车水马龙、人流如织,繁花似锦,热闹非凡,原来今天开始预订此地摆下的长街宴。心里高兴,便用手机…...
websocket webworker教程及应用
WebSocket 和 Web Workers 是两种不同的 Web 技术,分别用于实现实时通信和后台线程处理。以下是它们的简要教程: WebSocket 教程 1. 什么是 WebSocket? WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议。它允许服务器主动向客户端推…...
【后端】Flask
长期更新,建议关注收藏点赞! 实例1 Jinja2 是 Flask 和 Django 使用的 模板引擎,它允许你在 HTML 中嵌入 Python 代码,以动态生成页面内容。Jinja2 语法类似于 Django 模板,并支持变量、条件判断、循环、过滤器等。 fr…...
【cran Archive R包的安装方式】
cran Archive R包的安装方式 添加链接描述 1.包被cran移除 2.包要求的R语言版本与你电脑上的版本不相符 ad archive包的网址或者是下载到工作目录下,ad等于文件名 install,packages(ad repos NULL)...
告别格式转换困境:Word-to-Markdown工具的高效智能无缝方案
告别格式转换困境:Word-to-Markdown工具的高效智能无缝方案 【免费下载链接】word-to-markdown A ruby gem to liberate content from Microsoft Word documents 项目地址: https://gitcode.com/gh_mirrors/wo/word-to-markdown 当技术文档作者需要将Word内容…...
从OBS源码看WASAPI实战:Windows音频采集的‘静音循环’修复与高精度时间戳处理
从OBS源码剖析WASAPI音频采集:静音循环修复与高精度时间戳的工程实践 在直播软件OBS的音频处理模块中,WASAPI接口的高效运用直接决定了音画同步质量与系统资源占用率。本文将深入OBS源码,揭示其解决Windows音频采集两大核心难题的技术方案&am…...
如何通过手机号快速找回QQ账号:3分钟完成的终极指南
如何通过手机号快速找回QQ账号:3分钟完成的终极指南 【免费下载链接】phone2qq 项目地址: https://gitcode.com/gh_mirrors/ph/phone2qq 还在为忘记QQ账号而烦恼吗?每次需要验证好友身份时都要翻遍通讯录?现在,通过phone2…...
应用层缓存的庖丁解牛
“应用层缓存”常被误解为“加个 Redis 那么简单”或“为了快而快”。 但本质上,应用层缓存是用“空间”换“时间”,用“一致性风险”换“系统吞吐量”的终极权衡艺术。 它是数据库(慢、稳、强一致)与用户(快、急、高并…...
深入解析GD32的I/O重映射:从部分映射到完全映射的实战指南
1. 认识GD32的I/O重映射功能 第一次接触GD32的I/O重映射时,我也是一头雾水。简单来说,这个功能允许我们把某个外设的引脚从默认位置"搬家"到其他引脚上。想象一下你家的电路插座,原本电视机插在客厅的插座上,现在通过延…...
Cosmos-Reason1-7B模型微调实战:基于领域数据提升专业问答效果
Cosmos-Reason1-7B模型微调实战:基于领域数据提升专业问答效果 想让一个通用大模型变成你所在领域的专家吗?比如,让它精通法律条文解读,或者能回答专业的医疗咨询。直接拿现成的Cosmos-Reason1-7B来用,效果可能差强人…...
OpenArk内核驱动加载故障排除:从问题诊断到解决方案
OpenArk内核驱动加载故障排除:从问题诊断到解决方案 【免费下载链接】OpenArk The Next Generation of Anti-Rookit(ARK) tool for Windows. 项目地址: https://gitcode.com/GitHub_Trending/op/OpenArk OpenArk作为新一代Windows反Rootkit工具,其…...
ML-Agents终极指南:如何快速生成训练数据与合成样本技术
ML-Agents终极指南:如何快速生成训练数据与合成样本技术 【免费下载链接】ml-agents Unity-Technologies/ml-agents: 是一个基于 Python 语言的机器学习库,可以方便地实现机器学习算法的实现和测试。该项目提供了一个简单易用的机器学习库,可…...
前端新手入门:跟快马AI学用localStorage实现视频续播功能
今天想和大家分享一个特别适合前端新手练手的小项目:用localStorage实现视频续播功能。这个功能我们平时在各大视频网站都能见到,比如"继续观看"的提示,其实实现起来并不复杂,但涉及了前端开发中几个非常实用的知识点。…...
演员-评论家网络在ADP中的应用:如何构建和训练你的第一个模型
演员-评论家网络在自适应动态规划中的实战指南 当我们需要解决复杂控制问题时,传统动态规划方法往往面临"维度灾难"的困境。演员-评论家网络(Actor-Critic Network)作为自适应动态规划(ADP)的核心架构&#…...
