基于Python的对拍debug工具

脚本程序基于Python3.4,请先配置好环境。

import os

def run():
    # 运行程序并输出结果
    os.system('my.exe < in.txt > my.dat')
    os.system('right.exe < in.txt > right.dat')

def check():
    # 逐行对比运行结果
    my = open('my.dat', 'r')
    right = open('right.dat', 'r')
    log = open('log.txt', 'w')
    log.write('-----------All Error-----------\n')
    for (i, (a, b)) in enumerate(zip(my, right)):
        if a != b:
            log.write('line ' + str(i+1) + '\n')
            log.write('---MY:' + a)
            log.write('---AC:' + b)

if __name__ == '__main__':
    run()
    check()

 

文件说明:

in.txt——数据输入文件

my.exe—-你的程序

right.exe–AC的程序

my.dat—-你的程序的输出

right.dat–AC程序的输出

log.txt—-输出结果对比

欢迎留言