a = hex(1)
b = a[1] + a[0] + a[2]
由于那些插座可以使用,所以我尝试将其变成带有\括号的十六进制。
a = hex(1)的十六进制为0x1,\ x01是我需要的。所以我所做的是
b = a[1] + a[0] + a[2]
将其转换为我想要的x01。但是我不能在python中添加'\'
b = '\' + a[1] + a[0] + a[2]
给我一个错误
答案 0 :(得分:3)
我假设您不希望在文字后加反斜杠x01
,但要使用字符\x01
:
>>> a = hex(1)
>>> b = chr(int(a[2:], 16))
>>> b
'\x01'
int
将字符串“ 1”解析为以16为底的数字,而chr
将结果数字转换为具有该代码点的字符。
请注意,结果不不包含任何反斜杠,而是一个长度为一的字符串,其中\x01
仅表示“ Heading of Heading”(开始标题)控制字符,称为 Ctrl + A 。
>>> len('\x01')
1
答案 1 :(得分:1)
b = '\\' + a[1] + a[0] + a[2]
print(b)
答案 2 :(得分:1)
'\'
是python中的特殊字符,即“转义字符”。例如,'\n'
代表换行符,'\t'
代表标签。您还可以使用双反斜杠“转义”转义字符。因此'\\'
将打印一个反斜杠。
答案 3 :(得分:-1)
>>> print("\{number}".format(number=hex(1)))
\0x1