我需要发送一个包含十六进制值的命令,例如:“ \ x06 \ x01 \ x00 \ x44”。 然后使用内置的.encode()函数将该字符串编码为二进制,然后发送到Telnet。
出于我不明白的原因,如果使用其他十六进制格式(0x代替\ x)格式化字符串,则该字符串不起作用:“ 0x060x010x000x44”,因此,我尝试仅使用\ x。
在转换之前,我需要在命令中插入一个值,但是我不知道如何获取整数输入并将其转换为十六进制字符串文字。
我可以这样做:
input_int = 100
hex_value = hex(input_int)
但是那给我留下了hex_value ='0x64',与'\ x64'不同。
我是否缺少快捷方式,或者是否可以将int直接转换为十六进制文字字符串?
(顺便说一下,我正在使用Python 2.7。)
答案 0 :(得分:1)
结果是chr()是我想要的。它将整数值转换为具有适当值的ASCII字符。