web-dev-qa-db-fra.com

comment xor binaire avec python

J'essaie de xor 2 binaires en utilisant python comme ça mais ma sortie n'est pas en binaire aucune aide?

a = "11011111101100110110011001011101000"
b = "11001011101100111000011100001100001"
y = int(a) ^ int(b)
print y
16
user1793032
a = "11011111101100110110011001011101000"
b = "11001011101100111000011100001100001"
y = int(a,2) ^ int(b,2)
print '{0:b}'.format(y)
23
Robᵩ

Pour obtenir le binaire Xor à la même longueur, conformément à la demande de l'OP, procédez comme suit:

a = "11011111101100110110011001011101000"
b = "11001011101100111000011100001100001"
y = int(a, 2)^int(b,2)
print bin(y)[2:].zfill(len(a))

[output: 00010100000000001110000101010001001]

Convertissez les chaînes binaires en une base entière 2, puis XOR, puis bin() puis sautez les deux premiers caractères, 0b, D'où la bin(y0)[2:] .
Après cela, juste zfill à la longueur - len(a), dans ce cas.

À votre santé

7
BigH