python 2.7在字符串中添加'\'

时间:2019-09-11 06:58:05

标签: python string

  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]

给我一​​个错误

4 个答案:

答案 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