import locale locale.getpreferredencoding(do_setlocale=True)
do_setlocale - определяет вызов функции locale.setlocale().Функция getpreferredencoding() модуля locale вернет кодировку, используемую для текстовых данных, в соответствии с предпочтениями пользователя.
Пользовательские предпочтения по-разному выражаются в разных системах и могут быть недоступны программно в некоторых системах, поэтому эта функция возвращает только предположение.
В некоторых системах необходимо вызвать функцию locale.setlocale() для получения пользовательских настроек, поэтому эта функция не является поточно-ориентированной.
Если вызов locale.setlocale() не является необходимым или желательным, для do_setlocale должно быть установлено значение False.
В Android или в режиме UTF-8, опция -X utf8 всегда возвращает UTF-8, а локаль и аргумент do_setlocale игнорируются.
>>> import locale >>> locale.getpreferredencoding() 'UTF-8'