首页 > 其他 > 详细

比较用户输入的两个文件,显示出所有不同处的行号与第一个不同字符的位置

时间:2015-09-01 16:37:02      阅读:253      评论:0      收藏:0      [点我收藏+]

1. 编写一个程序,比较用户输入的两个文件,如果不同,显示出所有不同处的行号与第一个不同字符的位置。

import os
import re
cwd = os.getcwd()
os.chdir(cwd)
filename1 = input("请输入需要比较的头一个文件名:")
filename2 = input("请输入需要比较的另一个文件名:")
f1=open(filename1)
f2=open(filename2)
rownum = 0
count = 0
#定义为每一行有一处不同
for(line1,line2) in zip(f1,f2):
    rownum+=1
    if line1 != line2:
        colnum=0
        for(chara,charb) in zip(line1,line2):
           if chara == charb:
                colnum+=1
            else:
                print 第%d行第%d列不一样%(rownum,colnum)   
        count += 1
print("两个文件共有【%d】处不同" % count)
f1.close()
f2.close()

a.txt内容:

从明天起,做一个幸福的人
喂马、劈柴,周游世界
从明天起,关心粮食和蔬菜
我有一所房子,面朝大海,春暖花开

b.txt内容:

从明天起,做一个幸福的人
喂马、劈柴,周游世界,哒哒
从明天起,关心粮食和蔬菜菜
我有一所房子,面朝大海,春暖花开

运行结果:

>>>

请输入需要比较的头一个文件名:a.txt
请输入需要比较的另一个文件名:b.txt
第2行第20列不一样
第3行第24列不一样
两个文件共有【2】处不同

比较用户输入的两个文件,显示出所有不同处的行号与第一个不同字符的位置

原文:http://www.cnblogs.com/sunshishi/p/4775876.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!