如何将 Python 的 stdout 输出重定向到字符串变量?

Linda Hamilton
发布: 2024-11-26 00:15:13
原创
742 人浏览过

How Can I Redirect Python's stdout Output to a String Variable?

在 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中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板