Redirecting Python stdout ,stderr and stdin

Alexander Schmolck a.schmolck at gmx.net
Sun Nov 23 21:02:50 EST 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.


'as




More information about the Python-list mailing list