Pourquoi bit non ne pas agir comme prévu pour les bits de basculement? Voir par exemple ci-dessous:La signification de Bit-wise PAS en Python
a = 5
print(bin(a))
b = ~a
print(bin(b))
Ceci est la sortie:
0b101
-0b110
La question est pourquoi le premier bit de la gauche n'est pas basculée?
Considérant que la documentation Python dit:
~ x Renvoie le complément de x - le numéro que vous obtenez en changeant chaque 1 pour 0 et chacun 0 pour 1.
Editer: Êtes-vous en train de dire que "~" n'est pas l'opérateur pour le basculement simple des bits, mais à la place c'est l'opérateur pour le complément à deux? Si oui, pourquoi la phrase citée de la documentation ne le dit pas. La phrase ci-dessus de la documentation de Pyhton ne signifie pas cela pour moi.
C'est le complément de deux –
Notez le '-' devant' -0b110'. Il ne peut pas vous montrer une série infinie de '1 'qui se termine à gauche, donc il vous montre' bin (abs (b)) 'avec un signe' -' devant. – user2357112
Préambule - https://wiki.python.org/moin/BitwiseOperators –