Если программа командной строки не уверена в кодировке stdout, какую кодировку он должен выводить?

У меня есть программа командной строки, написанная на Python, и когда я передаю ее через другую программу в командной строке, sys.stdout.encoding равно Нет . Я полагаю, это имеет смысл - на выходе может быть другая программа, или файл, в который вы ее перенаправляете, или что-то еще, и он не знает, какая кодировка требуется. Но я тоже! Эта программа будет использоваться многими разными людьми (шутите надо мной) по-разному. Следует ли мне перестраховаться и выводить только ascii (заменяя символы, отличные от ascii, знаками вопроса)? Или я должен вывести UTF-8, поскольку это ' так широко распространены в наши дни?

7
задан mackstann 16 February 2011 в 07:22
поделиться