Bitwise Operators
Opérateurs Binaires (Bitwise Operators) en Python
Les opérateurs binaires en Python permettent de manipuler des nombres au niveau des bits. Ils sont principalement utilisés pour des calculs à faible niveau ou des opérations sur des données binaires.
Opérateurs Binaires Disponibles
ET Bit à Bit (&
)
Utilisation : Compare chaque bit de ses opérandes. Si les deux bits sont 1
, le bit de résultat est 1
.
result = a & b
OU Bit à Bit (|
)
Utilisation : Compare chaque bit de ses opérandes. Si au moins un des bits est 1
, le bit de résultat est 1
.
result = a | b
OU Exclusif Bit à Bit (XOR
, ^
)
Utilisation : Compare chaque bit de ses opérandes. Si les deux bits sont différents, le bit de résultat est 1
.
result = a ^ b
Non Bit à Bit (NOT
, ~
)
Utilisation : Inverse chaque bit. 0
devient 1
et 1
devient 0
.
result = ~a
Décalage à Gauche (<<
)
Utilisation : Décale les bits vers la gauche, en ajoutant des zéros à droite.
result = a << 2 # Décale a de 2 bits vers la gauche
Décalage à Droite (>>
)
Utilisation : Décale les bits vers la droite.
result = a >> 2 # Décale a de 2 bits vers la droite
Utilisation Pratique
Masquage : Utilisé pour masquer certains bits (par exemple, extraire certains bits spécifiques d'un nombre). Paramètres de Configuration : Permet de stocker plusieurs valeurs booléennes dans un seul entier. Optimisation : Ces opérateurs peuvent être plus rapides pour certains types de calculs.
Exemples
a = 0b1101 # 13 en décimal
b = 0b1011 # 11 en décimal
# ET Bit à Bit
et_result = a & b # 0b1001 (9 en décimal)
# OU Bit à Bit
ou_result = a | b # 0b1111 (15 en décimal)
# XOR Bit à Bit
xor_result = a ^ b # 0b0110 (6 en décimal)
# Non Bit à Bit
not_result = ~a # -14 en décimal (dépend du système de complément à deux)
# Décalage à Gauche
left_shift = a << 2 # 0b110100 (52 en décimal)
# Décalage à Droite
right_shift = a >> 2 # 0b11 (3 en décimal)
Bonnes Pratiques
Clarté : Utilisez ces opérateurs lorsque cela est logique; évitez-les pour des opérations simples qui pourraient être réalisées plus clairement avec d'autres opérateurs.
Commentaires : Ajoutez des commentaires pour expliquer ce que font ces opérations, car elles peuvent être difficiles à comprendre pour ceux qui ne sont pas familiers avec la manipulation de bits.
Besoin d'aide ?
Rejoignez notre communauté officielle et ne restez plus seul à bloquer sur un problème !