Python快速入门 运算符

算数运算符

主要用于数值之间的运算

运算符描述实例
+数据做和
-数据做差
*数据做积
/数据做商在这里插入图片描述
%求余在这里插入图片描述
**幂运算在这里插入图片描述
//整除在这里插入图片描述

这里请仔细看一下 / // 的区别:
//:向下取整
/:两个整型取值是浮点型

赋值运算符 ‘=’

将等号右边的值赋值给左边 如 a=3

赋值的种类描述
普通 a=3将3赋值给a
多个变量同时被赋予同一个值 a=b=c=1a、b、c、的值都为1在这里插入图片描述
多个变量同时赋值 a,b=1,2a 的值为1,b的值为2在这里插入图片描述

Ps:Python中不支持自增自减运算符如i++、i- -等
在这里插入图片描述

复合赋值运算符

复合赋值运算符 = 算数运算符 + 赋值运算符

类型描述
+=a+=b 等价于 a=a+b
-+a-=b 等价于 a=a-b
*=a*=b 等价于 a=a*b
/=a/=b 等价于 a=a/b在这里插入图片描述
%=a%=b 等价于 a=a%b在这里插入图片描述
**=a**=b 等价于 a=a**b在这里插入图片描述
//=a//=b 等价于 a=a//b在这里插入图片描述

比较运算符

用于比较两个数值,其结果返回的只有True False
比较简单,这里不做论述

= 、 > 、 < 、!= 、>= 、<=

逻辑运算符

运算符描述
and并且
or或者
not除非

这里与java等语言不同,其中也包含短路思想 如and 并且运算符 :
a and b:
若 a 为真则继续算 b 的值,如果 a 为假 则直接输出False
a or b:
若 a为真则直接输出a的值,如果a为假 则算b的值,表达式的结果为b的值 再根据b的值判断输出True 或者 False

成员运算符

用于判断某个值是否在某个序列中

类型描述
in值是否处于该序列中 处于返回True 否则返回False在这里插入图片描述
not in值是否不处于该序列中,不处于返回True 否则返回False在这里插入图片描述

位运算符

程序中所有的数值在内存中都以二进制的形式进行存储,位运算则是直接对二进制数进行操作的Python中也存在为运算符,包括一下几种

位运算符功能描述
<<按位左移
>>按位右移
&按位与
(竖线)按位或
^按位异或
~按位取反
0000   0000
高位    低位

按位左移

所有的二进制数全部左移n位,高位丢弃(如果是0才丢弃,否则一直保留),低位补0(左移几位那么右边就补几个0,左边的丢弃)
在这里插入图片描述
例如:
9<<4
00001001 -> 10010000
9 -> 144
这里说一下为什么00001001是9
1001 对应 8421 那么8+1=9这是为什么呢 ?

我们在计算将2进制数变成十进制时是这样计算的 2的三次方*1+ 2的二次方*0+ 2的一次方*0 + 2的0次方*1
所以二进制中每一位所代表的十进制数就是

2的八次方256
2的七次方128
2的六次方64
2的五次方32
2的四次方16 
2的三次方8 
2的二次方4
2的一次方2
2的零次方1

那么10010000
就是128+16=144
正巧
9 * 2^4=916=144
所以在计算某一个数乘2的几次方时可以用左移运算
5 * 2^4 = 5
16=80
在这里插入图片描述

按位右移动

将所有的二进制数向右移动n位,移出位去掉,高位不够补0 符号位保持不变
9>>4
0000 1001 -> 0000 0000 变成为0
在这里插入图片描述

按位与(&)运算

类似于乘法,二进制状态下,只有两个都是1结果才是1,即每一位做积即可
9&8 = 8

00001001
&
00001000
———————
00001000
在这里插入图片描述

按位或

二进制状态下,只要有一个是1则就是1
9|8=9

00001001
|
00001000
——————
00001001
在这里插入图片描述
当参与运算是负数时,参加的两个数都已补码的形式出现

负数在计算机以补码的形式存在
补码=源码取反+1

异或运算

二进制位中,如果两位中一个为1,另一位为0,则结果为1,否则为0
9^8=1
00001001
^
00001000
——————
00000001
在这里插入图片描述

按位取反

将二进制的每一位进行取反
这里要运用补码的知识
正数的源码 = 反码 = 补码
将补码转换为源码时 符号不变各个位取反然后再在源码的基础上+1得源码
~9
源码:00001001
反码:11110110
补码:符号位不变,源码值+1
10001010
————————
-10
在这里插入图片描述

运算符的等级

指数
按位翻转
乘、除、取模、取整数
加法、减法
右移、左移
按位与
位运算符
比较运算符
等于运算符
赋值运算符
成员运算符
逻辑运算符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值