1.问题描述和test程序代码
Python如何在运行完程序之后,在最后获取本程序运行输出的打印内容(包括tdqm的进度条输出内容)并写入文件呢?
程序代码:
import datetime
import os
import sys
import time
from tqdm import tqdm
if __name__ == '__main__':
#############################################################
# 这里输出之后的所有的输出的print 内容即将写入日志
#############################################################
sum = 0
data = [1,2,3,4,5,6,7,9]
for i in tqdm(data):
tmp = 0
try:
tmp = sum+1 / i
except:
tmp = 0
sum += tmp
print(sum)
print(666)
2.需要达到的效果
100%|██████████| 8/8 [00:00<?, ?it/s]
177.33015873015873
666
进程已结束,退出代码0
比如上面这个程序在输出之后,在“进程已结束,退出代码0”之前获取之前的所有打印输出内容(包括进度条)并把它写入txt文件,如下图。
txt文件的内容:
100%|██████████| 8/8 [00:00<?, ?it/s]
177.33015873015873
666