python学习——【第二弹】

news2025/1/18 10:09:31

前言

上一篇文章 python学习——【第一弹】给大家介绍了python中的基本数据类型等,这篇文章接着学习python中的运算符的相关内容。

运算符

python中的运算符主要有:算术运算符,赋值运算符,比较运算符,布尔运算符以及位运算符。

算术运算符

在这里插入图片描述

在这里插入图片描述

赋值运算符

1:python中的赋值运算符是由 ’ = ’ 表示的,它的执行顺序是 从右到左

比如

a=1+2
print(a) #将1+2的值赋给等式左边的变量

2:支持链式赋值:

q=w=e=10
print(q,id(q))
print(w,id(w))
print(e,id(e))

在这里插入图片描述

3:支持参数赋值

a1=20;
a1+=10
print(a1)#输出30      20+10=30
a1-=10
print(a1)#输出20       30-10=20
a1*=10
print(a1)#输出200      20*10=200
a1%=15
print(a1)#取余输出0     200%15=5
a1/=10
print(a1)#此时a1=0,故取商=0.5   
b1=30
b1//=4
print(b1)#整除关系,输出7

4:支持系列解包赋值

a,b,c=10,20,30  #30-》c  20-》b  10-》a   实际上是三个对象指向三个地址
print(a,id(a))
print(b,id(b))
print(c,id(c))
#注意python是从右到左赋值,系列解包赋值指向不同的地址;并且变量的个数要和值得个数保持一致,否则会抛出ValueError:

在这里插入图片描述

比较运算符

1:比较运算符用的是‘ == ’比较运算符得结果是Bool类型

a,b=10,20
print('a==b吗',a==b) #False
print('a!=b吗',a!=b) #True

2:与赋值运算符 = 相区分 ; 比较运算符 == 比较的是两个对象得value值,不比较两个对象的标识;用于比较两个对象的标识所用得是 is,is not

list1=[11,22,33,44]
list2=[11,22,33,44]
print(id(list1),id(list2))  #两个变量的标识不相同
print(list1==list2)  #两个变量的值是相同的  True
print(list1 is list2)   #False

在这里插入图片描述

布尔运算符

使用布尔运算符返回的是True或False;以下为布尔运算符的使用说明:
在这里插入图片描述在这里插入图片描述

位运算符

该运算符按二进制位对值进行操作

1:位与 &

参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0

print(4&8) #0

在这里插入图片描述

2:位或 |

只要对应的两个二进位有一个为1时,结果位就为1

print(4|8) #12

在这里插入图片描述

3:左移位运算符 <<

把’<<'左边的运算数的各二进制位全部左移若干位,<<右边的数字指定了向左移动的位数,高位溢出舍弃,低位补0;向左移动一位相当于*2

print(4 << 1) #8

在这里插入图片描述

4:右移位运算符>>

把‘>>’左边的运算数的各二进制位全部右移若干位,>>右边的数字指定了向右移动的位数,低位溢出舍弃,高位补0;向右移动一位相当于/2

print(4>>1) #2

在这里插入图片描述

5:异或(^)

按位异或运算符,当两对应的二进位相异时,结果为1

print(4^8) #12

在这里插入图片描述

6:取反(~)

按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1

print~5#-6

取反过程
+5:

  1. 计算原码:0101

  2. 计算补码:0101(正数原码与补码相同)

  3. 对补码依次取反:1010(取反后数字的补码,由符号位可知为负数)

  4. 取反后数字反码:1001(负数的反码=补码-1)

  5. 取反后数字原码:1110(相对于反码符号位不变,数值位依次取反)

  6. 转化为十进制:-6

-4:

  1. 计算原码:1100

  2. 计算反码:1011(相对于原码符号位不变,数值位依次取反)

  3. 计算补码:1100(负数补码=反码+1)

  4. 对补码依次取反:0011(取反后数字的补码,由符号位可知为正数)

  5. 取反后数字原码:0011(正数原码、反码、补码相同)

  6. 转化为十进制:+3

我们可以直接记住取反的公式:

~x=-x-1

每篇一语

不忘初心,方得始终!

如有不足,感谢指正!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

NPP夜间灯光遥感数据读取与可视化

1、Google Earth EngineGoogle Earth Engine是Google推出的行星尺度的遥感云计算平台&#xff0c;提供了大量遥感数据的集成与运算工具。同时也包括DMSP和NPP夜间灯光遥感数据&#xff08;月尺度和年尺度&#xff09;。这里给出样例的可视化代码。var dataset ee.ImageCollect…

1.2 CSS标签选择器,类选择器

CSS选择器&#xff1a; 根据不同的需求选出不同的标签&#xff0c;进行美化装饰 1. 标签选择器 标签选择器(元素选择器)&#xff1a;用 HTML标签名作为选择器&#xff0c;按标签名称进行分类&#xff0c;为页面某一类标签指定统一的CSS样式 作用: 可以把某一类标签全部选中&…

UWB通道选择、信号阻挡和反射对UWB定位范围和定位精度的影响

&#xff08;一&#xff09;介绍检查NLOS操作时需要考虑三个方面&#xff1a;&#xff08;1&#xff09;由于整体信号衰减&#xff0c;通信范围减小。&#xff08;2&#xff09;由于直接路径信号的衰减&#xff0c;导致直接路径检测范围的减小。&#xff08;3&#xff09;由于阻…

记录--手摸手带你撸一个拖拽效果

这里给大家分享我在网上总结出来的一些知识&#xff0c;希望对大家有所帮助 前言 最近看见一个拖拽效果的视频(抖音&#xff1a;艾恩小灰灰)&#xff0c;看好多人评论说跟着敲也没效果&#xff0c;还有就是作者也不回复大家提出的一些疑问&#xff0c;本着知其然必要知其所以然…

栈帧之局部变量表(Local Variables)解读

局部变量表也被称之为局部变量数组或本地变量表 定义为一个数字数组&#xff0c;主要用于存储方法参数和定义在方法体内的局部变量&#xff0c;这些数据类型包括各类基本数据类型、对象引用&#xff08;reference&#xff09;&#xff0c;以及returnAddress类型。由于局部变量表…

2023最新版本RabbitMQ下载安装教程

一、RabbitMQ简介 RabbitMQ 是一个由 Erlang 语言开发的 AMQP 的开源实现。主要用于在进程、应用程序和服务器之间交换数据&#xff0c;可以通过插件支持进行扩展&#xff0c;支持许多协议&#xff0c;并提供高性能、可靠性、集群和高可用队列。 AMQP &#xff1a;Advanced Me…

2023年疫情开放,国内程序员薪资涨了还是跌了?大数据告诉你答案

自从疫情开放&#xff0c;国内各个行业都开始有复苏的迹象&#xff0c;尤其是旅游行业更是空前暴涨&#xff0c;那么互联网行业如何&#xff1f; 有人说今年好找工作多了&#xff0c;有人说依然是内卷得一塌糊涂&#xff0c;那么今年开春以来&#xff0c;各个岗位的程序员工资…

第十四届蓝桥杯模拟赛(第三期)试题与题解 C++

目录 一、填空题 &#xff08;一&#xff09;最小的十六进制(答案&#xff1a;2730) &#xff08;二&#xff09;Excel的列(答案&#xff1a;BYT) &#xff08;三&#xff09;相等日期(答案&#xff1a;70910) &#xff08;四&#xff09;多少种取法(答案&#xff1a;189)…

20 客户端服务订阅的事件机制剖析

Nacos客户端服务订阅的事件机制剖析 我们已经分析了Nacos客户端订阅的核心流程&#xff1a;Nacos客户端通过一个定时任务&#xff0c;每6秒从注册中心获取实例列表&#xff0c;当发现实例发生变化时&#xff0c;发布变更事件&#xff0c;订阅者进行业务处理&#xff0c;然后更…

超长文解析Linux块设备驱动编写方法

1.前提知识 一个块驱动提供对块存储设备&#xff08;比如 SD 卡、EMMC、NAND Flash、Nor Flash、SPI Flash、机械硬盘、固态硬盘等&#xff09;以固定大小&#xff08;块的大小由内核决定&#xff0c;常常是 4096 字节 &#xff09;的块为基本单位&#xff0c;进行随机的存取。…

【项目实战】使用Feign服务间相互调用,其实OpenFeign也没有想象中那么难嘛

一、Feign介绍 openfeign是一个java的http客户端,用来简化http调用 二、Feign架构(来自官方) Feign由五大部分组成, 由于刚开始接触 feign ,比较关注的 clients 跟 encoders/decoders 三、OKHTTP与Feign之间的关系 在Feign中,Client是一个非常重要的组件,Feign最终…

Altium Designer19 #学习笔记# | 基础应用技巧汇总

全文目录一.元件符号库二.元件封装库1.AD09 集成元件库/封装库三.电路原理图1. 巧用查找"相似对象功能"1.1 查找相同元件1.2. 查找相同文本1.3. 查找相同网络 &#xff1a;E - S - C四.PCB原理图【AD PCB模式下的常用快捷键】PCB视图放大/缩小PCB视图左/右移动PCB切换…

《第一行代码》 第十章:服务

一&#xff0c;在子线程中更新UI 1&#xff0c;新建项目&#xff0c;修改布局代码 <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"&g…

Bluetooth

GATT简介 蓝牙分为经典蓝牙和低功耗蓝牙&#xff08;BLE&#xff09;&#xff0c;我们常用的蓝牙遥控器就是低功耗蓝牙 低功耗蓝牙&#xff08;BLE&#xff09;连接都是建立在 GATT (Generic Attribute Profile) 协议之上。 GATT全称Generic Attribute Profile&#xff08;直译…

软件测试用例篇(2)

功能测试界面测试兼容性测试安全测试易用性测试性能测试 针对有需求的案例来设计测试用例:邮箱注册&#xff0c;部分测试用例 https://zay1xofb7z6.feishu.cn/mindnotes/bmncnKD5Ak6GSZl3PRlWDgF9z3g#mindmap 一)等价类: 场景需求:姓名长度是6-200位&#xff0c;那么如何进行设…

【数据结构初阶】手撕单链表

目录一.链表概念和结构二.单链表功能的实现1.打印单链表内容2.申请单链表节点3.头插和尾插4.头删和尾删5.单链表查找6.pos位置前后插入7.pos位置删除三.链表面试题剖析一.链表概念和结构 概念&#xff1a;链表是一种物理存储结构上非连续、非顺序的存储结构&#xff0c;数据元素…

5-12 SpringCloud快速开发入门:服务消费者构建Hystrix Dashboard监控端点

服务消费者构建Hystrix Dashboard监控端点 Hystrix 仪表盘工程已经创建好了&#xff0c;现在我们需要有一个服务&#xff0c;让这个服务提供一个路径为/actuator/hystrix.stream 接口&#xff0c;然后就可以使用 Hystrix 仪表盘来对该服务进行监控了&#xff1b; 我们改造消费者…

pandas常用操作

文章目录1 认识Pandas2 pandas常用数据结构2.1 Series2.1.1 Series创建2.1.2 数据类型转换2.1.3 查看Series对象的属性2.1.4 预览数据head、tail2.1.5 通过索引获取数据2.2 DataFrame2.2.1 创建DataFrame对象2.2.2 获取行、列、值2.2.3 数据预览2.2.4 通过索引获取数据2.2.5 增…

【Redis】Redis高级客户端Lettuce详解

文章目录前提Lettuce简介连接Redis定制的连接URI语法基本使用API同步API异步API反应式API发布和订阅事务和批量命令执行Lua脚本执行高可用和分片普通主从模式哨兵模式集群模式动态命令和自定义命令高阶特性配置客户端资源使用连接池几个常见的渐进式删除例子在SpringBoot中使用…

C/C++每日一练(20230304)

目录 1. 计数质数 ☆ 2. 筛选10到1000的回文数 ☆ 3. 计算位于矩阵边缘的元素之和 ★ 1. 计数质数 统计所有小于非负整数 n 的质数的数量。 示例 1&#xff1a; 输入&#xff1a;n 10 输出&#xff1a;4 解释&#xff1a;小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7…