我使用python ftplib编写了一个小型FTP客户端,但程序包中的某些功能不会返回字符串输出,而是输出到stdout。我想重定向stdout到一个我将能够从中读取输出的对象。
python ftplib
stdout
我知道stdout可以使用以下命令将其重定向到任何常规文件中:
stdout = open("file", "a")
但是我更喜欢不使用本地驱动器的方法。
我正在寻找类似BufferedReaderJava的东西,可用于将缓冲区包装到流中。
BufferedReaderJava
from cStringIO import StringIO # Python3 use: from io import StringIO import sys old_stdout = sys.stdout sys.stdout = mystdout = StringIO() # blah blah lots of code ... sys.stdout = old_stdout # examine mystdout.getvalue()