Redirecting Python stdout ,stderr and stdin
a.schmolck at gmx.net
Mon Nov 24 03:02:50 CET 2003
"Serge Orlov" <sombDELETE at pobox.ru> writes:
> "Alexander Schmolck" <a.schmolck at gmx.net> wrote in message news:yfssmke8vl0.fsf at black132.ex.ac.uk...
> > Jan Knop <nospam at nospam.yes> writes:
> > > Hello
> > >
> > > I am writing a Windows application where I need to redirect stdin,
> > > stdout and stderr from Python. to my application
> > > Is it a simple way of do it ?
> > import sys
> > sys.stdin, sys.stderr, sys.stdout = map(open, 'in.txt err.txt out.txt'.split(),
> > 'r w w'.split())
> That is why map should be deprecated asap ;)
> sys.stdin = open("in.txt")
> sys.stdout = open("out.txt","w")
> sys.stderr = open("err.txt","w")
The obfuscation in the above example was intended not to immediately overwhelm
the OP (who expected having to use some winsock thingy) with simplicitly and
clarity, but now you've spoilt it.
More information about the Python-list