Python中的换位运算符


"""
a = 100  二进制为: 01100100
b = 200  二进制为: 11001000

按位运算符:
     &    参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0  例: a & b = b'01000000' => 64
     |    只要对应的二个二进位有一个为1时,结果位就为1                例: a | b = b"11101100" => 236
     ^    当两对应的二进位相异时,结果为1                           例: a ^ b = b"10101100" => 172
     ~    二进制数+1,加负号,或者 十进制算法: -x-1                  例: ~a = -100-1 = -101 (十进制算法)   ~a= -(01100100 + 1) = -(01100101) => -101
     <<   二进制在右边补n个0                                    例: a <<3 = b"1100100000" 补3个0  => 800   
     >>   二进制从右边开始砍掉n位数                             例: a >> 3 = b"1100"  砍掉3个数 => 12
"""

a = 100
b = 200

# &
print(a & b)
print(int(b'01000000', 2))

# # |
# print(a | b)
# print(int(b'11101100', 2))
#
# # ^
# print(a ^ b)
# print(int(b'10101100', 2))
#
# # ~
# print(~a)
# print(int(b'-01100101', 2))
#
# # >>
# print(a << 3)
# print(int(b'1100100000', 2))
#
# # <<
# print(b >> 3)
# print(int(b'11001', 2))
发布了73 篇原创文章 · 获赞 14 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_42327755/article/details/103560957
今日推荐