【发布时间】:2019-01-29 03:49:06
【问题描述】:
我正在尝试以另一种方式打印我的十六进制...
首先我要转换这个(字节串是变量的名称):
b'\xff\x00\xff\xff\xff'
到十六进制,
print(bytestring.hex())
哪个输出:
ff00ffffff
但我已经尝试了一段时间让它输出这个:
ff 00 ff ff ff
但没有运气。
有什么建议吗? 干杯!
更新:
stringdata = f.read(5)
print(stringdata)
#b'\xff\x00\xff\xff\xff'
readHex = " ".join(["{:02x}".format(x) for x in stringdata.hex()])
# ValueError: Unknown format code 'x' for object of type 'str'
【问题讨论】:
-
b'\xff\x00\xff\xff\xff\' 是语法错误:最后一个反斜杠太多
-
@pault:如果你考虑十六进制字符串的中间步骤,是的,它可能是一个骗子,但对于整个问题来说,它不是
-
当然-我在想
btyestring = str(b'\xff\x00\xff\xff\xff').encode('hex')然后你可以做" ".join([btyestring[i:i+2] for i in range(0, len(btyestring), 2)])@Jean-FrançoisFabre
标签: python python-3.x hex