Standard Streams
Module sys
is also the place where the standard
input, output, and error streams of your Python programs live:
>>> for f in (sys.stdin, sys.stdout, sys.stderr): print f
...
<open file '<stdin>', mode 'r' at 762210>
<open file '<stdout>', mode 'w' at 762270>
<open file '<stderr>', mode 'w' at 7622d0>
The standard streams are simply pre-opened Python file objects that
are automatically connected to your program’s standard streams
when Python starts up. By default, they are all tied to the console
window where Python (or a Python program) was started. Because the
print
statement and raw_input
functions are really nothing more than user-friendly interfaces to
the standard output and input streams, they are similar to using
stdout
and stdin
in
sys
directly:
>>>print 'hello stdout world'
hello stdout world >>>sys.stdout.write('hello stdout world' + '\n')
hello stdout world >>>raw_input('hello stdin world>')
hello stdin world>spam
'spam' >>>print 'hello stdin world>',; sys.stdin.readline( )[:-1]
hello stdin world>eggs
'eggs'
Get Programming Python, Second Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.