python读取两个文件并且判断是否一致

'''
判断两个文件是否相同,如果不同请指出第几行不相同
'''

def f1vsf2(name1,name2):
    f1 = open(name1)
    f2 = open(name2)
    count = 1
    msg=[]
    for line1 in f1:
        line2 = f2.readline()
        if(line1!=line2):
            msg.append("第%d行不一样"%count)
        count+=1
    f1.close()
    f2.close()
    return msg
isbool = True
while isbool:
    fname1 = input("请输入要比较的文件1路径及文件名:")
    if fname1 =='':
        print("文件名不能请重新输入")
        break;
    fname2 = input("请输入要比较的文件2路径及文件名:")
    if fname2 =='':
        print("文件名不能请重新输入")
        break;
    result = f1vsf2(fname1,fname2)
    if len(result)==0:
        print("两个文件完全一致")
    else:
        print("两个文件共有【%d】行不同"%len(result))
        for msg in  result:
            print(msg)
    isbool = False

  该方法待改进,因为如果f1比f2内容少之后就不会对比后边的东西。

原文地址:https://www.cnblogs.com/pengpengzhang/p/8675697.html