比较用户输入的两个文件,显示出所有不同处的行号与第一个不同字符的位置
2015-09-01 15:42
519 查看
1. 编写一个程序,比较用户输入的两个文件,如果不同,显示出所有不同处的行号与第一个不同字符的位置。
a.txt内容:
从明天起,做一个幸福的人
喂马、劈柴,周游世界
从明天起,关心粮食和蔬菜
我有一所房子,面朝大海,春暖花开
b.txt内容:
从明天起,做一个幸福的人
喂马、劈柴,周游世界,哒哒
从明天起,关心粮食和蔬菜菜
我有一所房子,面朝大海,春暖花开
运行结果:
>>>
请输入需要比较的头一个文件名:a.txt
请输入需要比较的另一个文件名:b.txt
第2行第20列不一样
第3行第24列不一样
两个文件共有【2】处不同
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】处不同
相关文章推荐
- centos 6.5 安装qt5.2
- form表单验证
- js获取验证码倒计时的实现方法
- hdu 2291 Five in a Row, Again 状态压缩搜索
- 万万没想到用理工科思维理解世界-摘录
- Linux常用命令大全
- Nginx 11个阶段
- 新生儿的基本常识
- [Bluetooth(SDK)]使用WinSock连接到远程设备
- POJ 2892 Tunnel Warfare (线段树)
- Linux学习记录(8)Linux基本权限设置
- 面向客户端的服务
- 01变换 二维树状数组+区间更新,单点查询 poj 2155 Matrix
- Deepin下添加连接实现WiFi共享功能(支持Adhoc手机)
- sqlserver stuff
- 关于touch的一些方法和代码
- 看问题的视角和接触的人
- C++纯虚函数 virtual =0
- 浅析 android 接口回调机制
- 把格子纸里的格子随机染黑白两色,平均每片色斑有多少格子?