Я использую python 2.7.10.python u ' u00b0' возвращает u ' xb0'. Зачем?
При работе с кодировкой символов и после прочтения большого количества переполнения стека и т. Д. По этому вопросу я столкнулся с таким поведением, которое выглядит странно для меня. Python интерпретатор ввод
>>>u'\u00b0'
приводит следующий вывод:
u'\xb0'
Я мог бы повторить это поведение, используя окно DOS, простой консоль, и крыло-язь питон оболочку.
Мои предположения (исправьте меня, если я ошибаюсь): «символ степени» имеет unicode 0x00b0, utf-8 код 0xc2b0, код латинского 1 0xb0. Python doc говорит, что строковый литерал с u-префиксом кодируется с использованием юникода.
Вопрос: Почему результат преобразован в строковый литерал в формате Юникод с помощью последовательности байтов-escape-последовательности, которая соответствует кодировке латинского-1, вместо сохранения последовательности escape-кода юникода?
Заранее благодарим за любую помощь.