2024-04-27 04:17:38 发布
网友
我想用一个整数(即<;=255)表示十六进制字符串
例如:我想通过65然后出去'\x41',或者255然后得到'\xff'。
65
'\x41'
255
'\xff'
我试过用struct.pack('c',65)来实现这个功能,但这会阻塞任何高于9的内容,因为它想要接受一个字符串。
struct.pack('c',
)
9
这将把一个整数转换为一个两位数的十六进制字符串,前缀是:
strHex = "0x%0.2X" % 255
您正在寻找chr函数。
chr
您似乎混合了整数的十进制表示和整数的十六进制表示,所以还不完全清楚您需要什么。根据你的描述,我认为其中一个片段表明了你想要什么。
>>> chr(0x65) == '\x65' True >>> hex(65) '0x41' >>> chr(65) == '\x41' True
注意,这与一个包含十六进制整数的字符串非常不同。如果这是您想要的,请使用hex内置。
hex
那^{}呢?
hex(255) # 0xff
如果你真的想让\在前面,你可以:
\
print '\\' + hex(255)[1:]
这将把一个整数转换为一个两位数的十六进制字符串,前缀是:
您正在寻找
chr
函数。您似乎混合了整数的十进制表示和整数的十六进制表示,所以还不完全清楚您需要什么。根据你的描述,我认为其中一个片段表明了你想要什么。
注意,这与一个包含十六进制整数的字符串非常不同。如果这是您想要的,请使用
hex
内置。那^{} 呢?
如果你真的想让
\
在前面,你可以:相关问题 更多 >
编程相关推荐