📌  相关文章
📜  python中的按位运算(1)

📅  最后修改于: 2023-12-03 15:34:26.558000             🧑  作者: Mango

Python中的按位运算

在编程中,按位运算是一种通过直接操作数字的二进制位进行运算的方式。Python也提供了按位运算的功能和运算符。

按位与运算

按位与运算用符号&表示,它将两个操作数的每个对应位都进行与操作。如果对应位都为1,则结果为1,否则为0。

例如:

a = 60    # 60的二进制位为 0011 1100
b = 13    # 13的二进制位为 0000 1101

# 按位与运算
c = a & b  # 为 0000 1100
print(c)   # 输出12
按位或运算

按位或运算用符号|表示,它将两个操作数的每个对应位都进行或操作。如果对应位都为0,则结果为0,否则为1。

例如:

a = 60    # 60的二进制位为 0011 1100
b = 13    # 13的二进制位为 0000 1101

# 按位或运算
c = a | b  # 为 0011 1101
print(c)   # 输出61
按位异或运算

按位异或运算用符号^表示,它将两个操作数的每个对应位都进行异或操作。如果对应位不同,则结果为1,否则为0。

例如:

a = 60    # 60的二进制位为 0011 1100
b = 13    # 13的二进制位为 0000 1101

# 按位异或运算
c = a ^ b  # 为 0011 0001
print(c)   # 输出49
按位取反运算

按位取反运算用符号~表示,它将操作数的每个二进制位进行取反操作。

例如:

a = 60    # 60的二进制位为 0011 1100

# 按位取反运算
c = ~a   # 为 -61
print(c)  # 输出-61
左移运算

左移运算用符号<<表示,它将一个操作数的二进制位向左移动指定的位数。

例如:

a = 60     # 60的二进制位为 0011 1100

# 左移运算
c = a << 2  # 为 1111 0000
print(c)    # 输出240
右移运算

右移运算用符号>>表示,它将一个操作数的二进制位向右移动指定的位数。

例如:

a = 60     # 60的二进制位为 0011 1100

# 右移运算
c = a >> 2  # 为 0000 1111
print(c)    # 输出15

按位运算在某些情况下可以提高运算速度和效率,特别是在处理大量数据和位掩码时。因此,在编写Python程序时,必须对按位运算有一定的了解和掌握。