Как декодировать строку "Dsadd\\xc3\\xa1" в 'utf_8'?

если создать строку без экранирования(\) символа "\" то вроде получается желаемый результат

v = "Dsadd\xc3\xa1
print(v) #  DsaddÃ

по этому я подумал просто удалить из строки эти штрихи "\" c помощью регулярных выражения

re.sub(r'',"", v , flags=re.MULTILINE)# Dsadd\xc3\xa1

казалось бы теперь можно перевести все в bytes и прогнать через v.decode('utf_8'), но v.encoding('utf_8') и bytes(v) переводит просто экранируя "\"

b'Dsadd\\xc3\\xa1'

хотелось бы получить что то вроде

v = "Dsadd\\xc3\\xa1" # str

v.decode('utf_8') # DsaddÃ

Ответы (1 шт):

Автор решения: camomile
v = v.encode().decode('unicode-escape')
v.encode('latin1').decode('utf-8')

Все дело в latin1 который не экранируюет "\" :D

→ Ссылка