Существует один Unicode (на самом деле есть разные версии).
Вы можете определить любой вид кодировки, это не имеет большого значения.
В качестве официальной кодировки форма используется UTF-16LE, UTF-16BE, UTF-32LE, UTF-32BE. Также официально, поэтому в стандарте Unicode у вас есть описание UTF-8, UTF-16 и UTF-32.
UCS2 была старой кодировкой Unicode (равной UTF-16, но с поддержкой только кода <65536), поэтому теперь она устарела (заменена на UTF16, которая способна кодировать все (также более новые) кодовые точки Unicode ). UTF-7 также устарел. </p>
Есть также апрельские дураки UTF-9 и UTF-18 .
Некоторые приложения имеют UTF8-сиг (это UTF-8 с исходной спецификацией).
На почте, вероятно, вы будете использовать UTF8 + BASE64 или другую двойную кодировку.
Mysql использует UTF8MB3 и UTF8MB4, поэтому он определяет UFT-8, но также и количество байтов, которые нужно зарезервировать (3 или 4) на SQL CHAR.
Python3 использует (внутренне, вы, вероятно, никогда этого не увидите) смешанную кодировку: UTF-8, UTF-16 или UTF-32 в соответствии с большим кодом во всей строке (и «кодировка» сохраняется вместе со строкой длина, вне "истинной строки"). Так что это тоже своего рода кодировка.
У нас есть 21 бит для описания любой кодовой точки Юникода. Тогда мы можем выбирать любые кодировки (таким образом, чтобы мы могли вернуться к исходной кодовой точке). UTF-8, UTF-16 и UTF-32 являются наиболее распространенными (и описаны в стандарте Unicode).