很多时候,由于各种原因,运行很多天代码的错误信息没有保存,导致又要重新跑代码,为了随时记录错误信息,可以利用subprocess模块实现。代码如下

import subprocess

def save_terminal_output(command, output_file):
    with open(output_file, 'w') as f:
        try:
            # 运行命令并捕获输出
            output = subprocess.check_output(command, stderr=subprocess.STDOUT, shell=True, universal_newlines=True)
            # 将输出写入文件
            f.write(output)
        except subprocess.CalledProcessError as e:
            # 如果命令返回非零状态码,将错误信息写入文件
            f.write(e.output)

# 调用示例
command = 'python train.py'  # 替换为你要运行的命令
output_file = 'C:/Users/Desktop/Safe-RL/log/log.txt'  # 替换为输出文件的路径和名称
save_terminal_output(command, output_file)

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐