在Python 中將stdout 輸出重新導向到字串緩衝區
在Python 中使用ftplib 時,某些函數會將訊息輸出到stdout 而不是回傳字串。如果您需要在字串變數中輸出此輸出,則需要重定向。
要將stdout 重定向到記憶體緩衝區,請考慮以下解決方案:
from cStringIO import StringIO # Python 2 # or from io import StringIO # Python 3 import sys # Save the original stdout object old_stdout = sys.stdout # Create a new StringIO object to capture stdout output mystdout = StringIO() # Redirect stdout to the new StringIO object sys.stdout = mystdout # Execute code that generates stdout output # ... # Restore original stdout sys.stdout = old_stdout # Access the captured stdout output output = mystdout.getvalue()
此方法有效地包裝了StringIO stdout 周圍的緩衝區,允許您在執行後以字串形式捕獲和操作輸出。
以上是如何將 Python 的 stdout 輸出重定向到字串變數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!