Книга: PyNEng
Назад: 16. Unicode
Дальше: Unicode в Python 3

Стандарт Unicode

Стандарт Юникод

Юникод - это стандарт, который описывает представление и кодировку почти всех языков и других символов.

Несколько фактов о Юникод:

  • стандарт версии 10.0 (июнь 2017) описывает 136 690 кодов
  • каждый код - это номер, который соответствует определенному символу
  • стандарт также определяет кодировки - способ представления кода символа в байтах

Каждому символу в Юникод соответствует определенный код. Это число, которое обычно записывается таким образом: U+0073, где 0073 - это шестнадцатеричные цифры.

Кроме кода, у каждого символа есть свое уникальное имя. Например, букве "s" соответствует код U+0073 и имя "LATIN SMALL LETTER S".

Примеры кодов, имен и соответствующих символов:

  • U+0073, "LATIN SMALL LETTER S" - s
  • U+00F6, "LATIN SMALL LETTER O WITH DIAERESIS" - ö
  • U+1F383, "JACK-O-LANTERN" - ????
  • U+2615, "HOT BEVERAGE" - ☕
  • U+1f600, "GRINNING FACE" - ????

Кодировки

Кодировки позволяют записывать код символа в байтах.

Юникод поддерживает несколько кодировок:

  • UTF-8
  • UTF-16
  • UTF-32

Одна из самых популярных кодировок на сегодняшний день - UTF-8. Эта кодировка использует переменное количество байт для записи символов Юникод.

Примеры символов Юникод и их представление в байтах в кодировке UTF-8:

  • H - 48
  • i - 69
  • ???? - 01 f6 c0
  • ???? - 01 f6 80
  • ☃ - 26 03
Назад: 16. Unicode
Дальше: Unicode в Python 3