What does this code mean: "print >> sys.stderr"
Question:
print >> sys.stderr, "Error in atexit._run_exitfuncs:"
Why print ‘>>’ in front of sys.stderr
?
Thanks.
Answers:
From the Python documentation:
print also has an extended form,
defined by the second portion of the
syntax described above. This form is
sometimes referred to as “print
chevron.” In this form, the first
expression after the >> must evaluate
to a “file-like” object, specifically
an object that has a write() method as
described above. With this extended
form, the subsequent expressions are
printed to this file object. If the
first expression evaluates to None,
then sys.stdout is used as the file
for output.
print >> sys.stderr, "Error in atexit._run_exitfuncs:"
Why print ‘>>’ in front of sys.stderr
?
Thanks.
From the Python documentation:
print also has an extended form,
defined by the second portion of the
syntax described above. This form is
sometimes referred to as “print
chevron.” In this form, the first
expression after the >> must evaluate
to a “file-like” object, specifically
an object that has a write() method as
described above. With this extended
form, the subsequent expressions are
printed to this file object. If the
first expression evaluates to None,
then sys.stdout is used as the file
for output.