gpt4 book ai didi

Python 捕获所有打印输出

转载 作者:太空狗 更新时间:2023-10-29 18:04:31 25 4
gpt4 key购买 nike

我想用 python 编写基于控制台的程序,这些程序可以执行函数来执行通用任务,非常通用。是否有可能通过函数中的 print 调用捕获写入控制台的所有内容,而无需返回字符串,类似于 bash 和 Windows shell 允许将程序输出管道传输到文本文件的方式,即

ipconfig>ipconfig.txt

但是在 python 程序中执行此操作,其中调用了一个函数,该函数内部打印到控制台的所有内容都被收集为一个字符串列表,然后可以保存到用户选择的 txt 文件中?

最佳答案

您可以通过将 sys.stdout 设置为您选择的文件来完成此操作

import sys

sys.stdout = open('out.dat', 'w')
print "Hello"

sys.stdout.close()

不会显示任何输出,但会使用打印的文本创建一个名为 out.dat 的文件。

请注意,这不一定是实际文件,但可以是 StringIO实例,您只需使用 getvalue 方法即可访问之前打印的所有内容。

关于Python 捕获所有打印输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30942622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com