我有一个像"0013A200305EFF96"
. 我想将其更改为 form "\x00\x13\xA2\x00\x30\x5E\xFF\x96"
。特殊字符是"\x"
. 我怎样才能以一种省时的方式做到这一点?
问问题
271 次
3 回答
6
Python2
>>> "0013A200305EFF96".decode("hex")
'\x00\x13\xa2\x000^\xff\x96'
Python3
>>> bytes.fromhex("0013A200305EFF96")
b'\x00\x13\xa2\x000^\xff\x96'
于 2013-05-20T08:43:22.797 回答
1
gnibbler 的答案可能是您真正想要的;但为了完整起见,以下是插入任何序列的方法:
>>> '\\x'.join(a[i:i+2] for i in xrange(0, len(a), 2))
于 2013-05-20T08:46:21.940 回答
1
如果你的意思是字面意思\x
:
import re
s= "0013A200305EFF96"
s=re.sub("(..)", r"\x\1",s)
print s
输出
\x00\x13\xA2\x00\x30\x5E\xFF\x96
于 2013-05-20T08:49:25.060 回答