我想在执行 python 脚本时跟踪它们的行。但是我使用的程序需要将内容打印到标准输出。 python 跟踪模块的跟踪选项将它们打印到标准输出。有没有告诉它不要将它们打印到标准输出,而是将它们保存到文件中?我尝试设置 outfile
参数,但它不会停止打印跟踪线。
最佳答案
您可以复制跟踪模块代码,并进行一些更改以将其输出写入您选择的文件。在第 600 行和第 650 行之间有五个 print
语句是您要更改的语句。因为你不需要让它太漂亮,你可以将它添加到文件的最后:
my_out_file = open("/home/mytrace.txt", "w")
并更改打印语句,这样:
print "%s(%d): %s" % (bname, lineno,
linecache.getline(filename, lineno)),
变成这样:
print >>my_out_file, "%s(%d): %s" % (bname, lineno,
linecache.getline(filename, lineno)),
关于Python 跟踪模块 - 执行时跟踪行,但保存到文件,而不是标准输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4286693/