#python
Вопрос:
my_string = «0123456789».
Я хочу преобразовать эту строку в 5 байтов, содержащих входную строку в виде шестнадцатеричных значений(каждый байт представляет две цифры). Желаемый результат может быть чем-то вроде
byte1 = 0x01
byte2 = 0x23
byte3 = 0x45
byte4 = 0x67
byte5 = 0x89
Все умные люди, пожалуйста, поделитесь своим мнением или примером кода.
Комментарии:
1. Вам действительно нужны строки, байты или целые числа в качестве выходных данных? Как показано, желаемыми выходными данными являются целые числа 1, 35, 69, 103 и 137.
Ответ №1:
Метод bytes.fromhex()
делает именно это:
>>> bytes.fromhex('0123456789')
b'x01#Egx89'
>>> [hex(i) for i in bytes.fromhex('0123456789')]
['0x1', '0x23', '0x45', '0x67', '0x89']