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

  • 相关阅读:
    二进制运算
    python魔法函数__dict__和__getattr__的妙用
    logging模块配置笔记
    一个python爬虫工具类
    和我一起学爬虫(一)
    不一样的谷歌搜索
    CentOS6.4安装辅助NIS的流程
    ROS6.16开始支持802.11ac了,扫盲下
    centos 安装 Splunk
    扫盲贴2.5寸移动硬盘的厚度有几种
  • 原文地址:https://www.cnblogs.com/sunshishi/p/4775876.html
Copyright © 2011-2022 走看看