target - The target, a file-like object where stderr should be redirected.
sys.stderr to file-like object .
May be useful for use with third-party code that only uses
From - due to the "global" nature of
sys.stderr , you should not use this manager in the library code and in the vast majority of programs with threads. Also, it doesn’t work with subprocess output (see
In the example below, a function
sys.stderrto write error information to it, but using the manager in question , you can redirect this information to
io.StringIOor to a file on disk:
# To errors.
errors_buffer = io .StringIO ()
with redirect_stderr (errors_buffer):
errors = errors_buffer.getvalue ()
# To a file on disk.
with open (’errors. txt’, ’w’) as errors_file:
with redirect_stderr (errors_file):
The created manager object is reentrant . This means that within a single
with block that has the same nested blocks, it can be used multiple times.