比较文件

import os,sys
def delblankline(infile,outfile):
    infopen = open(infile)
    outfopen = open(outfile,'w')
    lines = infopen.readlines()
    for line in lines:
        if line.split():
            outfopen.write(line.strip())
        else:
            outfopen.write("")
    infopen.close()
    outfopen.close()

#delblankline("source/text.txt","source/e.txt")
def searchfile(path,folder):
    try:
        files =os.listdir(path)
        for f in files:
            if f.endswith('.txt'):
                name=folder+"/start/"+f
                b_name=folder+"/noblank/"+'blank_'+f
                delblankline(name,b_name)
                print(name)
    except Exception:
        print ('failed')

#searchfile('target/start','target')
def compatefile(sfile,tfile,filename):
    source_file= open(sfile)
    s=source_file.read()
    target_file= open(tfile)
    #t= target_file.read()

    for line in target_file.readlines():
        if line in s:
            pass
        else:
            fos = open("result/n_"+filename+"_source.txt", "a+")
            fos.write(line)
    print(filename + " target Done.")

    for line in source_file.readlines():
        if line not in target_file.read():
            fot = open("result/N_"+filename+"_target.txt", "a+")
            fot.write(line)
    print(filename + " source Done.")


def compare():
    s="source/noblank/"
    t="target/noblank/"
    sfiles =os.listdir(s)
    for f in sfiles:
        compatefile(s+f,t+f,f)
        print(f)
compare()

 

posted @ 2017-04-25 11:19  zhgmyron  阅读(125)  评论(0编辑  收藏  举报