Разница между инструкциями python print и sys.stdout() в linux
Я пишу некоторый скрипт на python, который взаимодействует с пользователем в оболочке. я использовал
print 'something'
на самом деле, напечатать что-то.
Я запускаю его через ssh на своей удаленной машине и мне нужно регистрировать ошибки, поэтому я сделал
python script.py 2>error.log
но эта команда перенаправляет мой вывод в 'error.log' тоже. Но когда я изменил выходной оператор на
sys.stdout.write('something')
это сработало. У кого-нибудь есть объяснение?