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))

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章