Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #77115
| From | Peter Otten <__peter__@web.de> |
|---|---|
| Subject | Re: Reading from sys.stdin reads the whole file in |
| Date | 2014-08-27 09:42 +0200 |
| Organization | None |
| References | <53fd6a48$0$11111$c3e8da3@news.astraweb.com> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.13497.1409125378.18130.python-list@python.org> (permalink) |
Steven D'Aprano wrote:
> I'm trying to read from stdin. Here I simulate a process that slowly
> outputs data to stdout:
>
> steve@runes:~$ cat out.py
> import time
>
> print "Hello..."
> time.sleep(10)
> print "World!"
> time.sleep(10)
> print "Goodbye!"
In addition to what already has been said: you can switch off output
buffering of stdout/stderr with
python -u out.py
or by setting the PYTHONUNBUFFERED environment variable.
You still need the readline trick to get unbuffered input. Quoting the man-
page:
"""
-u Force stdin, stdout and stderr to be totally unbuffered. On
systems where it matters, also put stdin, stdout and stderr in
binary mode. Note that there is internal buffering in xread‐
lines(), readlines() and file-object iterators ("for line in
sys.stdin") which is not influenced by this option. To work
around this, you will want to use "sys.stdin.readline()"
inside a "while 1:" loop.
"""
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Reading from sys.stdin reads the whole file in Steven D'Aprano <steve@pearwood.info> - 2014-08-27 05:19 +0000
Re: Reading from sys.stdin reads the whole file in Marko Rauhamaa <marko@pacujo.net> - 2014-08-27 08:29 +0300
Re: Reading from sys.stdin reads the whole file in Marko Rauhamaa <marko@pacujo.net> - 2014-08-27 08:31 +0300
Re: Reading from sys.stdin reads the whole file in Steven D'Aprano <steve@pearwood.info> - 2014-08-27 06:37 +0000
Re: Reading from sys.stdin reads the whole file in Chris Angelico <rosuav@gmail.com> - 2014-08-27 16:45 +1000
Re: Reading from sys.stdin reads the whole file in Akira Li <4kir4.1i@gmail.com> - 2014-08-29 04:02 +0400
Re: Reading from sys.stdin reads the whole file in Chris Angelico <rosuav@gmail.com> - 2014-08-27 16:02 +1000
Re: Reading from sys.stdin reads the whole file in Peter Otten <__peter__@web.de> - 2014-08-27 09:42 +0200
Re: Reading from sys.stdin reads the whole file in Marko Rauhamaa <marko@pacujo.net> - 2014-08-27 11:39 +0300
Re: Reading from sys.stdin reads the whole file in Peter Otten <__peter__@web.de> - 2014-08-27 11:31 +0200
csiph-web