Использование Python3, чтобы свести к минимуму боль при работе с Unicode, я могу напечатать символ UTF-8, как например:Как инициализировать код UTF-16?
>>> print (u'\u1010')
တ
Но при попытке сделать то же самое с UTF-16, скажем U+20000
, u'\u20000'
является неправильный способ инициализации персонажа:
>>> print (u'\u20000')
0
>>> print (list(u'\u20000'))
['\u2000', '0']
Он читает вместо 2 символов UTF-8.
Я также попробовал большой U, т.е. u'\U20000'
, но он выдает ошибку побег:
>>> print (u'\U20000')
File "<stdin>", line 1
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 0-6: truncated \UXXXXXXXX escape
Big U вне строка не работает слишком:
>>> print (U'\u20000')
0
>>> print (U'\U20000')
File "<stdin>", line 1
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 0-6: truncated \UXXXXXXXX escape
'\ U' обозначение требует 8 цифр, я считаю. Попробуйте '' \ U00020000''. –