Исключающее ИЛИ шестнадцатеричных чисел

Я хочу применить побитовую операцию XOR к двум шестнадцатеричным числам, но мой код, похоже, не работает из-за «F» в номере. Я пытался преобразовать в int перед применением xor, но все равно получаю ошибку.

i = b"77"
res = operator.xor(int(i),int(b"FFFF"))
print(res)

Бит я получаю следующую ошибку: ValueError: недопустимый литерал для int() с основанием 10: b'FFFF'


person ahmer    schedule 08.12.2019    source источник


Ответы (1)


Вы не сказали int, что переданные вам строки представлены в шестнадцатеричном формате, поэтому он попытался разобрать их в десятичном формате. Передайте 16 в качестве второго параметра.

person Joseph Sible-Reinstate Monica    schedule 08.12.2019