Как изменить мой код в Python 3:Левой подушки шестигранного список
v = b'\x8c\x00'
' '.join([hex(i) for i in v])
Таких вот 0x8c 0x0 'становится '8c 00'
/Barry
Как изменить мой код в Python 3:Левой подушки шестигранного список
v = b'\x8c\x00'
' '.join([hex(i) for i in v])
Таких вот 0x8c 0x0 'становится '8c 00'
/Barry
v = b'\x8c\x00'
print(' '.join(['{:02x}'.format(i) for i in v]))
дает
8c 00
(Предполагая, что вы используете Python 3.x.)
Одним из вариантов является использование binascii.hexlify()
преобразовать в шестнадцатеричную строку и вставьте пробелы на второй стадии при необходимости:
s = binascii.hexlify(v)
s = b" ".join(s[i:i + 2] for i in range(0, len(s), 2))
Это установит s
на номер b'8c00'
и до b'8c 00'
на втором этапе. Если вам нужно str
вместо bytes
, вы можете использовать s.decode("ascii")
.
'[гекс] (я)' не является действительным кодом. Вы имеете в виду 'hex (i)'? – phihag
исправлен неверный код! – Baz
есть, используя python 3. – Baz