Если скрипт Python использует функцию open("filename", "r")
для открытия и последующего чтения содержимого текстового файла, как определить, какая кодировка этого файла должна быть?
Обратите внимание, что, поскольку яЯ выполняю этот сценарий из моей собственной программы, если есть какой-либо способ управлять этим через переменные окружения, то для меня этого вполне достаточно.
Кстати, это Python 2.7.
Данный код взят из Mercurial, ему можно дать список файлов, скажем, для добавления в хранилище, через файл на диске, вместо того, чтобы передавать их в командной строке.
Таким образом, вместо этогоиз этого:
hg add A B C
Я могу записать A, B и C в файл, с новой строкой между ними, а затем выполнить следующее:
hg add listfile:input.txt
Код, который заканчиваетсячтение этого файла таково:
files = open(name, 'r').read().split(delimiter)
Отсюда и мой вопрос.Когда я спросил, какую кодировку мне следует использовать, я получил ответ по IRC:
это та же кодировка, что и та, которую вы используете в командной строке при передаче аргумента файла
Я понимаю, что это та же самая кодировка, которую я "использую", когда выполняю Mercurial (hg).Поскольку я понятия не имею, какая это кодировка, я просто передаю все объекту .NET Process, я спрашиваю здесь.