Содержание строки python в неправильной кодировке
Имеется переменная преобразованная к str.
a = '\xca\xe0\xf1\xf1\xe0' (слово на кириллице "Касса").
Необходимо выводить на экран слова на кириллице, в данном случае касса.
Пробовал
print(a.encode('ascii').decode('utf-8'))
не получается.
Ответы (2 шт):
Автор решения: yagust
→ Ссылка
1.Байты нужно держать в байт строке, а не в обычной строке
2.Декодировать методом decode
Код ниже должен работать
a = "Касса".encode("windows-1251")
a.decode("windows-1251")
Автор решения: Виктор
→ Ссылка
Вариант такой:
import sys
a = '\xca\xe0\xf1\xf1\xe0'
res = bytes(a, 'Latin1').decode('cp1251')
print(f'{sys.stdout.encoding}: {res}')
Вывод: utf-8: Касса