2024-06-09 15:04:06 发布
网友
有人知道如何得到一个chr到hex的转换,输出总是两位数吗?
例如,如果转换结果为0x1,则需要将其转换为0x01,因为我正在连接一个长十六进制字符串。
0x01
我使用的代码是:
hexStr += hex(ord(byteStr[i]))[2:]
您可以使用format函数:
>>> format(10, '02x') '0a'
你不需要用它删除0x部分(就像你用[2:]一样)
0x
[2:]
为此,可以使用字符串格式:
>>> "0x{:02x}".format(13) '0x0d' >>> "0x{:02x}".format(131) '0x83'
编辑:代码建议您尝试将字符串转换为十六进制表示。有一种更简单的方法可以做到这一点(Python2.x):
>>> "abcd".encode("hex") '61626364'
另一种方法(也适用于Python 3.x)是函数binascii.hexlify()。
binascii.hexlify()
标准模块binascii也可能是答案,即当您需要转换较长的字符串时:
binascii
>>> import binascii >>> binascii.hexlify('abc\n') '6162630a'
您可以使用format函数:
你不需要用它删除
0x
部分(就像你用[2:]
一样)为此,可以使用字符串格式:
编辑:代码建议您尝试将字符串转换为十六进制表示。有一种更简单的方法可以做到这一点(Python2.x):
另一种方法(也适用于Python 3.x)是函数
binascii.hexlify()
。标准模块
binascii
也可能是答案,即当您需要转换较长的字符串时:相关问题 更多 >
编程相关推荐