我使用Python2.7并且我想要函数:contextlib.redirect_stdout。 我的意思是,我想重定向特定功能的输出(不是所有程序)。 问题是 - 只有Python3支持“context.redirect_stdout”而没有Python2.7。
有人知道我如何在Python2.7中使用相同的功能或实现相同的想法?
提前致谢
答案 0 :(得分:3)
如果您不担心重新使用相同的上下文管理器对象,那么这样的事情就可以完成。
import sys
import contextlib
@contextlib.contextmanager
def redirect_stdout(target):
original = sys.stdout
sys.stdout = target
yield
sys.stdout = original