[Tutor] reading from stdin

David Rock david at graniteweb.com
Wed Mar 2 06:13:35 CET 2005


* Nick Lunt <nick at javacat.f2s.com> [2005-03-01 22:23]:
> On Tue, 2005-03-01 at 14:14 -0800, Sean Perry wrote:
> 
> > 
> > unless you want the output for some other reason, a more idiomatic way
> > is:
> > 
> > for line in sys.stdin.readlines():
> >      # handle the line
> > 
> > I tend to use xreadlines() which does not read the entire input at once. 
> >   For stdin this make sense, you have no idea how much data will be 
> > piped in.
> 
> Thanks Sean, I agree with you on both accounts there.

For another approach to this, I like to use the fileinput module. In the
case of the original example of mimicing grep, it allows you to easily
handle both a list of files passed to the command or use it as a pipe.
The default action if there are no files given is to use stdin.

http://www.python.org/doc/2.4/lib/module-fileinput.html

-- 
David Rock
david at graniteweb.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://mail.python.org/pipermail/tutor/attachments/20050301/66fafd35/attachment.pgp


More information about the Tutor mailing list