Python 中常见的运算符有:
(1)算术运算符:加号 + 、减号 - 、乘号 * 、除号 / 、取余数 % 、幂运算 ** 、整除 // 。
(2)比较运算符:等于 == 、不等于 != 、大于 > 、小于 < 、大于等于 >= 、小于等于 <=。
(3)赋值运算符:等于 = 、加等于 += 、减等于 -= 、乘等于 *= 、除等于 /= 、取余等于 %= 、幂等于 **= 、整除等于 //=。
(4)逻辑运算符:与 and 、或 or 、非 not。
(5)成员运算符:in 和 not in。
(6)身份运算符:is 和 is not。
而在Python 中的位运算符有六种:按位与(&)、按位或(|)、按位异或(^)、按位取反(~)、左移位(<<)和右移位(>>)。
这些运算符可以用于布尔运算,例如,使用按位与运算符可以检查两个数字的奇偶性。如果两个数字都是奇数,则它们的按位与运算结果为奇数;否则,它们的按位与运算结果为偶数。
例如,要检查数字 5 是否为奇数,可以使用以下代码:
if 5 & 1:
print("5 是奇数")
else:
print("5 是偶数")
输出:
5 是奇数
请注意,这里使用了按位与运算符和数字 1。数字 1 的二进制表示为 0001,因此它只有最后一位是 1。因此,将数字 5 和数字 1 进行按位与运算将返回一个非零值,这意味着它们的按位与运算结果为奇数。
以下为分别使用六种位运算符的代码块举例说明:
- 按位与运算符(&):对于每一个比特位,只有两个操作数相应的比特位都是1时,结果才为1,否则为0。
a = 60 # 60 = 0011 1100
b = 13 # 13 = 0000 1101
c = a & b; # 12 = 0000 1100
print("1. c 的值为:", c)
- 按位或运算符(|):对于每一个比特位,当两个操作数相应的比特位至少有一个1时,结果为1,否则为0。
a = 60 # 60 = 0011 1100
b = 13 # 13 = 0000 1101
c = a | b; # 61 = 0011 1101
print("2. c 的值为:", c)
- 按位异或运算符(^):对于每一个比特位,当两个操作数相应的比特位有且只有一个1时,结果为1,否则为0。
a = 60 # 60 = 0011 1100
b = 13 # 13 = 0000 1101
c = a ^ b; # 49 = 0011 0001
print("3. c 的值为:", c)
- 按位取反运算符(~):按位取反运算符是一元运算符,用于反转数据的所有位。即0变成1,1变成0。
a = 60 # 60 = 0011 1100
c = ~a; # -61 = 1100 0011
print("4. c 的值为:", c)
- 左移位运算符(<<):左移运算符是二进制运算符。它把二进制数向左移动指定的位数,并在低位插入零。例如:0011 1100 左移2位得到1111 0000。
a = 60 # 60 = 0011 1100
c = a << 2; #240 = 1111 0000
print("5. c 的值为:", c)
- 右移位运算符(>>):右移运算符是二进制运算符。它把二进制数向右移动指定的位数。例如:0011 1100 右移2位得到0000 1111。
a = 60 #60 = 0011 1100
c = a >>2; #15 =0000 1111
print("6. c 的值为:", c)
以上就是使用位运算符进行布尔运算的内容和方法,希望大家都可以学业有成,一帆风顺。