Пытаюсь конвертировать программу 2.5 на 3.
Есть ли способ в python 3 изменить байтовую строку, например b '\ x01 \ x02' на строку стиля python 2.5, например '\ x01 \ x02', чтобы сравнение строк и побайтов работало аналогично до 2,5? Я читаю строку из двоичного файла.
У меня есть программа 2.5, которая считывает байты из файла, а затем сравнивает или обрабатывает каждый байт или комбинацию байтов с указанными константами. Чтобы запустить программу под 3, я бы не хотел менять все мои константы на байты и байтовые строки ('\ x01' на b '\ x01'), а затем решать проблемы в 3, такие как:
a = b'\x01'
b = b'\x02'
приводит к
(a+b)[0] != a
хотя аналогичные операции работают в 2.5. Мне нужно сделать (a + b) [0] == ord (a), а a + b == b '\ x01 \ x02' работает нормально. (Кстати, что мне делать с (a + b) [0], чтобы оно было равно a?)
Распаковка структур также является проблемой.
Я упустил что-то простое?