Python中提供了一系列便利的基础运算符,可用于数据分析研究。除了基本的算术、比较、赋值运算符外,还有按位运算符、逻辑运算符、成员运算符和身份运算符。
按位运算通常涉及底层的二进制表示,因此在一般应用程序开发中使用较少。在高级编程中,按位运算符更多地用于特定领域的优化和处理,如掩码操作、性能优化和加密算法等。
常用按位运算符如下表所示。在示例中,a为60,b为13,对应的二进制值如下。
a = 0011 1100
b = 0000 1101
运 算 符 |
描 述 |
示 例 |
& |
按位与运算符:参与运算的两个值如果相应位都为1,那么该位的结果为1,否则为0 |
a & b输出结果12, 二进制值:0000 1100 |
| |
按位或运算符:只要对应的两个二进位有一个为1,结果位就为1 |
a | b输出结果61, 二进制值:0011 1101 |
^ |
按位异或运算符:当两对应的二进位相异时,结果为1 |
a ^ b输出结果49, 二进制值:0011 0001 |
~ |
按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1 |
~a输出结果-61, 二进制值:1100 0011 |
<< |
左移动运算符:运算数的各二进位全部左移若干位,由“<<”右边的数指定移动的位数,高位丢弃,低位补0 |
a << 2输出结果240, 二进制值:1111 0000 |
>> |
右移动运算符:把“>>”左边的运算数的各二进位全部右移若干位,“>>”右边的数指定移动的位数 |
a >> 2输出结果15, 二进制值:0000 1111 |
按位运算符是对二进制数的运算,通常的数字都是使用十进制的,按位运算符会自动将输入的十进制数转为二进制数,再进行相应的运算。
# 按位运算 a = 60; b = 13 # 初始赋值 # 与运算 print(a & b) # 结果为12 # 或运算 print(a | b) # 结果为61 # 异或运算 print(a ^ b) #结果为49 # 取反运算 print(~a) # 结果为-61 # 位移运算 print(a << 2) # 结果为240 print(a >> 2) # 结果为15 |
更多内容分享,可持续关注~