Python 基础1 - 位运算符

Posted dazhi-blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 基础1 - 位运算符相关的知识,希望对你有一定的参考价值。

引言

本文主要介绍位运算符,实际上Python有以下7类运算符:
[赋值运算符]、[比较运算符]、[算术运算符]、[逻辑运算符]、[身份运算符]、[成员运算符]、[位运算符]

位运算符

按位运算符是把数字看做二进制来运算的,位运算符分两部分:1.位逻辑运算符 2.位移运算符
在二进制中 1 通常为 True,0 通常为 False

位逻辑运算符包括

异或 取反
& | ^ ~

位移运算符包括

左移 右移
<< >>

位逻辑运算符

二进制中 1 代表 True,0代表 False

  • & 与运算符,两数为 True 时结果为 True,否则为 False
  • | 或运算符,两数只要有一个为True,结果就为True,否则为False
  • ^ 异或运算符,当两数不一致时,结果为 True,两数一致时结果为 False
  • ~ 取反运算符,对二进制进行取反,即 1 取反为 00 取反为 1
# 二进制取反
a = 12  # 1100
print( ~a )  # 1100 + 1 = 1101
# 运行结果:-13 ,对应的二进制码:-1101

位移运算符

指定二进制码向左边或右边移动若干位

  • << 按位左移运算符,二进制码向左移动 N 位,左移多少位右边就补多少个0
# 按位左移
a = 12  # 12,对应的二进制码:1100
print( a << 3 )
# 运行结果:96,对应的二进制码:1100000
  • >> 按位右移运算符,二进制码向右移动 N 位,右边溢出丢弃,右移多少位左边就补多少个0
# 按位右移
a = 12  # 12,对应的二进制码:1100
print( a >> 1 )
# 运行结果:6 ,对应的二进制码:110

以上是关于Python 基础1 - 位运算符的主要内容,如果未能解决你的问题,请参考以下文章

python基础篇

Python基础2 编码和逻辑运算符

Python基础入门之位运算符

Python基础入门之位运算符

Python基础入门之位运算符

python基础8 数据类型和数据运算