Python系列(17)—— 位运算符

简介: Python系列(17)—— 位运算符

Python中的位运算符(Bitwise Operator)

一、引言

位运算符是直接对整数的二进制位进行操作的运算符。在Python中,位运算符可以对整数进行位级别的运算,如按位与(AND)、按位或(OR)、按位异或(XOR)、按位取反(NOT)等。这些运算符在底层系统编程、算法优化、网络通信等领域有广泛的应用。

二、位运算符介绍

  1. 按位与(&):对应位都为1时,结果位才为1,否则为0。
  2. 按位或(|):对应位只要有1,结果位就为1,否则为0。
  3. 按位异或(^):对应位不同时为1,相同时为0。
  4. 按位取反(~):对整数的二进制位取反,即0变为1,1变为0。
  5. 左移(<<):将数字的二进制表示向左移动指定的位数,右边用0填充。
  6. 右移(>>):将数字的二进制表示向右移动指定的位数,左边根据符号位填充(正数填充0,负数填充1)。

三、代码实例

下面通过几个示例来展示Python中位运算符的使用。

  1. 按位与(&)
a = 60  # 二进制表示:0011 1100
b = 13  # 二进制表示:0000 1101
# 使用按位与运算
result = a & b
print(result)  # 输出:12,二进制表示:0000 1100
  1. 按位或(|)
a = 60  # 二进制表示:0011 1100
b = 13  # 二进制表示:0000 1101
# 使用按位或运算
result = a | b
print(result)  # 输出:61,二进制表示:0011 1101
  1. 按位异或(^)
a = 60  # 二进制表示:0011 1100
b = 13  # 二进制表示:0000 1101
# 使用按位异或运算
result = a ^ b
print(result)  # 输出:49,二进制表示:0011 0001
  1. 按位取反(~)
a = 60  # 二进制表示:0011 1100
# 使用按位取反运算
result = ~a
print(result)  # 输出:-61,二进制表示:1100 0011(补码表示)
  1. 左移(<<)
a = 6  # 二进制表示:0000 0110
# 使用左移运算,将a的二进制表示向左移动2位
result = a << 2
print(result)  # 输出:24,二进制表示:0001 1000
  1. 右移(>>)
a = 10  # 二进制表示:0000 1010
# 使用右移运算,将a的二进制表示向右移动1位
result = a >> 1
print(result)  # 输出:5,二进制表示:0000 0101

四、总结

位运算符在Python编程中不常用,但在某些特定场景下(如底层系统编程、算法优化等)非常有用。通过掌握位运算符,可以更深入地理解计算机底层的数据表示和操作方式,提高编程能力和算法效率。

相关文章
|
7月前
|
数据安全/隐私保护 Python
Python中位运算符的用法
Python中位运算符的用法
82 0
|
22天前
|
Python
Python位运算符
Python位运算符。
24 4
|
22天前
|
Python
Python位运算符
Python位运算符。
21 2
|
7月前
|
Python 算法 Java
Python每日一练(20230417) 最大间距、Z字形变换、买卖股票最佳时机II
Python每日一练(20230417) 最大间距、Z字形变换、买卖股票最佳时机II
50 0
Python每日一练(20230417) 最大间距、Z字形变换、买卖股票最佳时机II
|
Python
【从零学习python 】08.Python了解位运算符, 运算符优先级
【从零学习python 】08.Python了解位运算符, 运算符优先级
83 0
|
运维 算法 Linux
Python编程 位运算符
本章将会讲解如何使用Python运算符中的位运算符。
138 1
Python编程 位运算符
|
JavaScript PHP Python
PHP、JS、Python逻辑运算符||和位运算符|
PHP、JS、Python逻辑运算符||和位运算符|
119 0
PHP、JS、Python逻辑运算符||和位运算符|
|
Java Python
说说Python中的6种位运算符?
公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助!
132 0
|
JavaScript PHP Python
PHP、JS、Python逻辑运算符||和位运算符|
PHP、JS、Python逻辑运算符||和位运算符|
110 0
|
Python
Python位运算符
a = 0011 1100 b = 0000 1101 a&b = 0000 1100 a|b = 0011 1101 a^b = 0011 0001 ~a = 1100 0011 ...
770 0