cómo xor binario con python

¿Estoy tratando de utilizar xor 2 binarios usando python como este pero mi salida no está en binario? ¿Alguna ayuda?

a = "11011111101100110110011001011101000" b = "11001011101100111000011100001100001" y = int(a) ^ int(b) print y 

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

Para obtener el binario Xor’d a la misma longitud, según la solicitud del OP, haga lo siguiente:

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

Convierta las cadenas binarias en una base entera 2, luego XOR , luego bin() y luego omita los dos primeros caracteres, 0b , por lo tanto, bin(y0)[2:] .
Después de eso, solo zfill a la longitud – len(a) , para este caso.

Aclamaciones

Ya que estás comenzando con cadenas y quieres un resultado de cadena, puedes encontrar esto interesante pero solo funciona si tienen la misma longitud.

 y = ''.join('0' if i == j else '1' for i, j in zip(a,b)) 

Si pueden ser de diferentes longitudes puedes hacer:

 y = ''.join('0' if i == j else '1' for i, j in zip(a[::-1],b[::-1])[::-1]) y = a[len(y):] + b[len(y):] + y