Сообщить об ошибке.

Кодировка, используемая Python

Определение текущий кодировки Python

Следующие функции модуля sys предоставляют информацию об используемой кодировке в интерпретатора Python из кода.

Содержание:


sys.getdefaultencoding():

Функция sys.getdefaultencoding() возвращает имя текущей кодировки по умолчанию, используемой реализацией Unicode.

>>> import sys
>>> sys.getdefaultencoding()
# 'utf-8'

sys.getfilesystemencoding():

Функция sys.getfilesystemencoding() возвращает имя кодировки, используемой для преобразования между именами файлов Unicode и именами байтов. Для лучшей совместимости следует использовать строки str для имен файлов во всех случаях, хотя также поддерживается представление имен файлов в виде байтов. Функции, принимающие или возвращающие имена файлов, должны поддерживать либо строки str, либо байты bytes и внутренне преобразовываться в предпочтительное представление системы.

>>> import sys
>>> sys.getfilesystemencoding()
# 'utf-8'

sys.getfilesystemencodeerrors():

Функция sys.getfilesystemencodeerrors() возвращает имя режима ошибки, используемого для преобразования между именами файлов Unicode и именами байтов. Имя кодировки возвращается из sys.getfilesystemencoding().

Функции os.fsencode() и os.fsdecode() должны использоваться для обеспечения правильного режима кодирования и ошибок.

>>> import sys
>>> sys.getfilesystemencodeerrors()
# 'surrogateescape'

sys._enablelegacywindowsfsencoding():

Функция sys._enablelegacywindowsfsencoding() изменяет кодировку файловой системы по умолчанию и режим ошибок на "mbcs" и "replace" соответственно для совместимости с версиями Python до 3.6.

Это эквивалентно определению переменной среды PYTHONLEGACYWINDOWSFSENCODING перед запуском Python.

sys.maxunicode:

Значение sys.maxunicode целое число, представляющее значение наибольшей кодовой точки Unicode, то есть 1114111 (0x10FFFF в шестнадцатеричном формате).

>>> import sys
>>> sys.maxunicode
# 1114111