oldcar 发表于 2021-9-25 16:50:48

如何将print的结果写入文件中

比如我正在调试运行边修改一段代码,里面有一些print输出内容。有没有什么办法,可以让print输出的内容保存到一个TXT文件或者其它什么文件中,以便于查看每次的输出有何不同?

Daniel_Zhang 发表于 2021-9-25 16:52:47

https://blog.csdn.net/xrinosvip/article/details/82019844

kogawananari 发表于 2021-9-25 20:05:15

使用日志模块logging可以选择输出到文件或stdout

冬雪雪冬 发表于 2021-9-25 20:29:28

命令行模式
python 程序.py > 输出.txt
这是利用DOS的输入输出重定向,将输出到屏幕的内容改为输出到文件中。

晴雨皆宜 发表于 2021-9-25 21:27:35

开卷有益,多多益善·····{:5_95:}

leafu 发表于 2021-9-26 09:16:46

我的建议是,你把要输出的内容保存在一个列表里,最后一次性输出到文件里面
import time
print_txt=[]
print_txt.append('每次要打印的内容')
...
with open('调试结果.txt','w',encoding='utf-8') as f:
      localtime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
      f.write(localtime)
      for i in print_txt:
               f.write(i)
注意,w的运行模式下,每次运行代码会清空之前的文字,如果想保存之前的运行记录,可改为a模式,但要记得提前创建好txt文件

oldcar 发表于 2021-9-26 21:06:15

leafu 发表于 2021-9-26 09:16
我的建议是,你把要输出的内容保存在一个列表里,最后一次性输出到文件里面
import time
print_txt=[]


感谢回答!这是一种方法,但不是我预想的。因为输出内容很多,估计有百十行吧,且输出的内容多样,不仅有文字,还有列表、字典,数据等等。所以你的方法,对我来说可能不太适合。

晴雨皆宜 发表于 2021-9-27 08:26:14

开卷有益,多多益善······

z5560636 发表于 2021-9-27 10:11:04

在linux 下可以直接用命令

python3 xx.py >> xx.txt
页: [1]
查看完整版本: 如何将print的结果写入文件中