在 Python 中,我有一个这样的字符串:
'\\x89\\n'
如何将其解码为普通字符串,例如:
'\x89\n'
如果您的输入值是str
字符串,请用于codecs.decode()
转换:
import codecs
codecs.decode(raw_unicode_string, 'unicode_escape')
如果您的输入值是一个bytes
对象,您可以使用以下bytes.decode()
方法:
raw_byte_string.decode('unicode_escape')
演示:
>>> import codecs
>>> codecs.decode('\\x89\\n', 'unicode_escape')
'\x89\n'
>>> b'\\x89\\n'.decode('unicode_escape')
'\x89\n'
Python 2 字节字符串可以使用编解码器进行'string_escape'
解码:
>>> import sys; sys.version_info[:2]
(2, 7)
>>> '\\x89\\n'.decode('string_escape')
'\x89\n'
对于Unicode文字(带有u
前缀,例如u'\\x89\\n'
),请使用'unicode_escape'
.
这适用于 Python 3:
b'\\x89\\n'.decode('unicode_escape')