day4 - 运算符


算数运算符

加减乘:+ - *
小数除:/
地板除://
幂运算:**
取余:%

小数除:结果为整数时也会加上 .0

地板除:*返回整数 (直接舍弃小数位,不会四舍五入)
      如果被除数和除数是一个小数,结果加上 *.0
      任意数和n进行地板除//,会出现n个相同的数字

取余规律:任意数和n取余,范围都是 0 ~ (n-1)
  负数取余:被除数是负数:-(余数) + 除数
          除数是负数:余数 + 除数
          被除数、除数都是负数:-(余数)

  求数字位数:个位:n % 10
          十位:n // 10 % 10
          百位:n // 100(限3位数)

  • \color{green}{算数运算符等级:}
() > 幂运算 > 取余 > 乘除 > 加减

比较运算符

等于判断:==
不等于判断:!=
大于判断:>
小于判断:<
大于等于判断:>=
小于等于判断:<=

判断成立返回 True,不成立返回 False


赋值运算符

+=   a=a+1 -> a+=1
-=   a=a-1 -> a-=1
*=   a=a*1 -> a*=1
/=   a=a/1 -> a/=1
//=  a=a//1 -> a//=1
%=   a=a%1 -> a%=1
**=   a=a**1 -> a**=1


成员运算符

存在判断:in
不存在判断:not in

in 存在返回 True,不存在返回 False,not in 则相反

  • \color{red}{注意:}
成员运算符仅用于容器型数据:str、list、tuple、set、dict
字符串必须是一个连续的片段,不能是离散片段

身份运算符

判断指向同一个内存值:is
判断指向不同的内存值:is not

is 为同一内存值返回 True,否则返回 False,is not则相反


逻辑运算符

and:同时满足,方才为真 (与)
or:满足其一即为真 (或)
not:取反,假为真,真为假 (非)

  • \color{yellow}{逻辑短路:}
True or:后面不执行
False or True:结果为后面
False and True:后面不执行
True and True:结果为后面

位运算

按位与:&

必须同时满足

0 & 0 = 0
0 & 1 = 0
1 & 0 = 0
1 & 1 = 1

按位或:|

满足其一,或者都满足

0 | 0 = 0
0 | 1 = 1
1 | 0 = 1
1 | 1 = 1

按位异或:^

只能满足其一

0 ^ 0 = 0
0 ^ 1 = 1
1 ^ 0 = 1
1 ^ 1 = 0

按位非:~

公式:-(n+1)

左移:<<

二进制左移若干位,右补0

相当于做乘法:乘以2的n次幂(n是左移的位数)

右移:>>

右移若干位,左补0

相当于做除法:除以2的n次幂(n是右移的位数)

运算符等级

  • \color{green}{个别运算符:}

优先级最高:**(幂运算)
优先级最低:=(赋值)
() 可以提升运算优先级

  • \color{green}{整体:}

一元运算符 > 二元运算符

一元运算符:同一时间,只操作一个值(- ~)
二元运算符:同一时间,操作两个值(+ - * /等等)

  • \color{green}{同一层级:}

逻辑:() > not > and > or
算数:() > 幂运算 > 取余 > 乘除 > 加减
位运算:(<<, >>) > & > ^ > |
其它运算:算数运算 > 位运算 > 比较运算 > 身份运算 > 成员运算 > 逻辑运算 赋值运算是最后全部运算完进行赋值


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容