zoukankan      html  css  js  c++  java
  • 比较用户输入的两个文件,显示出所有不同处的行号与第一个不同字符的位置

    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】处不同

  • 相关阅读:
    SpringBoot 部署【war】到服务器的tomcat
    SpringBoot 部署【jar】前后端分离(nginx)
    VM安装centos7
    nginx 入门
    《从零开始学习Mysql5.7》笔记
    架构师技术栈
    【读书笔记】小强升职记
    lambda 表达式
    【软考】信息资料
    flutter 获取状态栏高度
  • 原文地址:https://www.cnblogs.com/sunshishi/p/4775876.html
Copyright © 2011-2022 走看看