все Python 3sysфункция
sys.getfilesystemencoding()
кодировки
Возвращает кодировку, в которой Python переводит имена файлов и путей между str и байтами ОС; на современных системах обычно 'utf-8'.
Синтаксис
sys.getfilesystemencoding()
Речь только об именах файлов, переменных окружения и аргументах командной строки, а не о содержимом файлов — его кодировку задаёт encoding в open(). На Windows с Python 3.6 здесь 'utf-8' (а не 'mbcs'). Перекодировать путь вручную не нужно: os.fsencode() и os.fsdecode() делают это с правильной кодировкой и обработчиком ошибок.
Примеры
import sys
print(sys.getfilesystemencoding()) # → ? utf-8
import os, sys
enc = sys.getfilesystemencoding()
err = sys.getfilesystemencodeerrors()
print(os.fsencode('файл.txt') == 'файл.txt'.encode(enc, err)) # → True
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности