萌新学 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)...

SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
Qt Widget类解析与代码注释
#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码,写上注释 当然可以!这段代码是 Qt …...

前端导出带有合并单元格的列表
// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...
在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module
1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...
Robots.txt 文件
什么是robots.txt? robots.txt 是一个位于网站根目录下的文本文件(如:https://example.com/robots.txt),它用于指导网络爬虫(如搜索引擎的蜘蛛程序)如何抓取该网站的内容。这个文件遵循 Robots…...

《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...
Python 包管理器 uv 介绍
Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...
Python ROS2【机器人中间件框架】 简介
销量过万TEEIS德国护膝夏天用薄款 优惠券冠生园 百花蜂蜜428g 挤压瓶纯蜂蜜巨奇严选 鞋子除臭剂360ml 多芬身体磨砂膏280g健70%-75%酒精消毒棉片湿巾1418cm 80片/袋3袋大包清洁食品用消毒 优惠券AIMORNY52朵红玫瑰永生香皂花同城配送非鲜花七夕情人节生日礼物送女友 热卖妙洁棉…...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)
前言: 最近在做行为检测相关的模型,用的是时空图卷积网络(STGCN),但原有kinetic-400数据集数据质量较低,需要进行细粒度的标注,同时粗略搜了下已有开源工具基本都集中于图像分割这块,…...