^
python 中的 xor 运算符 ( ) 存在以下问题。我有两个二进制数,让a = 10100111
和b = 10000000
。当我使用 xor 运算符时,
print (10000000 ^ 10100111)
我得到的结果是 166671 而不是 00100111。但是,当我使用
print (100 ^ 101)
我得到了二进制 1 (001) 的适当结果。即使我使用
print int(a) ^ int(b)
我仍然得到 166671 的结果。
问题:
为什么我得到的结果是 166671 而不是二进制结果 00100111?
为什么我使用 100^101 会得到正确的结果?
我正在运行 Python 2.7.2 版。