python从字符串中删除十六进制前两个字符。

时间:2014-10-02 00:12:25

标签: python hex

我已从文件中读取一行,我有: '咖啡馆\ XC3版权所有\ xA9'

我想删除所有' \'和' x'字符串中的字符。但是,这些不是标记字符,而是十六进制值。我该怎么做?

输出: Cafc3a9

2 个答案:

答案 0 :(得分:0)

Python 3内置了各种字符串操作。尝试使用replace()方法。

其文档可在官方页面上找到:

https://docs.python.org/3.4/library/string.html

sample = r'Caf\xc3\xa9'
output = sample.replace(r'\x', '')
print(output)

注意:' r'只是意味着python应该将括号内的内容视为原始字符串,因此不要使用反斜杠来执行任何字符转义。

答案 1 :(得分:-1)

如果一个字符串显示为'\xab\xcd',那么\和x 实际上是字符串的一部分 - 而abcd也不是。相反,只有两个字符,一个值为0xab,另一个值为0xcd。

你可以写

'\xab\xcd'.encode('hex')

获得'abcd'