ビット単位の操作を実行すると、Python で奇妙な動作が見られます
>>> bin(4)
'0b100'
>>> bin(9)
'0b1001'
>>> bin(9^4)
'0b1101'
上で、OR の予想される動作を確認します。数値は右側に配置され、各ビットが OR 演算されて結果が生成されます。ただし、私の意見では、2 つの同一の整数を OR すると、結果は常に 0 になるはずです。
>>> bin(9^9)
'0b0'
これはバグですか、それとも非常に奇妙な機能ですか? 誰でも説明できますか?