Python - как преобразовать "сырую" строку в обычную строку
в Python у меня есть такая строка:
'x89n'
Как я могу декодировать его в обычную строку, например:
'x89n'
2 ответов
Python 2 байтовые строки могут быть декодированы с помощью 'string_escape'
кодек:
raw_string.decode('string_escape')
демо:
>>> '\x89\n'.decode('string_escape')
'\x89\n'
на unicode литералы, используйте 'unicode_escape'
. В Python 3, где строки являются строками unicode по умолчанию, только байтовые строки имеют .decode()
способ:
raw_byte_string.decode('unicode_escape')
если ваша входная строка уже строка Юникода, используйте codecs.decode()
преобразовать:
import codecs
codecs.decode(raw_unicode_string, 'unicode_escape')
демо:
>>> b'\x89\n'.decode('unicode_escape')
'\x89\n'
>>> import codecs
>>> codecs.decode('\x89\n', 'unicode_escape')
'\x89\n'