我希望能够在Python脚本结束时捕获控制台输出。也就是说,我想要像平常一样打印到控制台,并在执行结束后将控制台输出保存到文件中。
我看过一些相关的SO问题1, 2, 3,但它们要么只是重定向输出而不显示它,要么使用
以上所有链接的问题在于,来自您未编写的代码的控制台输出也会被输出。我想要在执行结束时获取整个程序的控制台输出。
我的第一反应是类似于:
但这仍然无法捕获其他代码和使用的库的控制台输出。 有没有一种方法可以在执行结束时保存Python脚本的控制台输出? 我觉得应该有一种简单的方法来做到这一点,但所有的研究都没有找到合适的解决方案。
我看过一些相关的SO问题1, 2, 3,但它们要么只是重定向输出而不显示它,要么使用
logging
。从我阅读logging
doc得出的结论是,您只能记录您编写的代码的输出。以上所有链接的问题在于,来自您未编写的代码的控制台输出也会被输出。我想要在执行结束时获取整个程序的控制台输出。
我的第一反应是类似于:
logFile = open('LogFile.txt', 'w')
def print_log(msg):
print(msg)
logFile.write(msg)
print_log('Hello World!')
logFile.close()
但这仍然无法捕获其他代码和使用的库的控制台输出。 有没有一种方法可以在执行结束时保存Python脚本的控制台输出? 我觉得应该有一种简单的方法来做到这一点,但所有的研究都没有找到合适的解决方案。