У меня вопрос о кодировке Python 2. Я пытаюсь декодировать строку ASCII, которая содержит код Unicode письма в Unicode, а затем закодировать его на латиницу 1, но без успеха. Вот иллюстрация:Преобразование ASCII в проблему кодирования Unicode
In[27]: d = u'\u010d'
In[28]: print d.encode('utf-8')
č
In[29]: d1 = '\u010d'
In[30]: d1.decode('ascii').encode('utf-8')
Out[30]: '\\u010d'
Я хотел бы преобразовать '\u010d'
в 'č'
. Существуют ли встроенные решения, чтобы избежать замены пользовательской строки?
Во-первых, строка ASCII никогда не может содержать символы с акцентом, такие как č, потому что они не являются частью ASCII. Python строго говорит об этом, он не интерпретирует ASCII как «все, что использует один байт на символ». Теперь, если вы использовали 'unicode' Python вместо' str' для хранения строк, вы могли бы сохранить этот символ и, возможно, также преобразовать его в представление Latin-1 bytewise. Я бы посоветовал вам обновить Python 3, хотя он лучше разработан для разных кодировок. –