(original) (raw)
I think the issue with sys.std\* is a distraction for this discussion. The issue also seems overstated, and I wouldn't want to change it. The ability to set these is mostly used in small programs that are also single-threaded. Libraries should never mess with them -- it's easy to explicitly pass an output file around, and for errors you should use logging or in a pinch you can write to sys.stderr, but you shouldn't set it.