python文件比较示例分享


Posted in Python onJanuary 10, 2014
# 比较两个字符串,如果不同返回第一个不相同的位置
# 如果相同返回0
def cmpstr(str1, str2):
    col = 0
    for c1, c2 in zip(str1, str2):
        if c1 == c2:
            col += 1
            continue
        else :
            break    #判断是怎样退出循环的,还有一种情况是串长度不同
    if c1 != c2 or len(str1) != len(str2):
        return col+1
    else :
        return 0
file1 = open("a.txt",'r')
file2 = open("b.txt",'r')

fa = file1.readlines()
fb = file2.readlines()
file1.close()
file2.close()
#用GBK解码,这样可以处理中文字符
fa = [ str.decode("gbk") for str in fa]
fb = [ str.decode("gbk") for str in fb]
row = 0
col = 0

#开始比较两个文件的内容
for str1, str2 in zip(fa, fb):
    col = cmpstr(str1,str2)
    # col=0则说明两行相等
    if col == 0 :
        row += 1
        continue
    else:
        break
#如果有一行不同,或者文件长度不一样
if str1 != str2 or len(fa) != len(fb):
    #打印出不同的行序和列序,并把不同的前一句后本句打印出来
    #最后两个字符是不同的地方
    print "row:", row+1, "col:", col
    print "file a is:\n", fa[row-1],fa[row][:col+1], "\n"
    print "file b is:\n", fb[row-1],fb[row][:col+1], "\n"
else :
    print "All are same!"
raw_input("Press Enter to exit.")  
Python 相关文章推荐
Python使用flask框架操作sqlite3的两种方式
Jan 31 Python
Python并发之多进程的方法实例代码
Aug 15 Python
Python图像滤波处理操作示例【基于ImageFilter类】
Jan 03 Python
Python制作exe文件简单流程
Jan 24 Python
pandas去除重复列的实现方法
Jan 29 Python
Python+opencv 实现图片文字的分割的方法示例
Jul 04 Python
Python中的list与tuple集合区别解析
Oct 12 Python
Flask框架路由和视图用法实例分析
Nov 07 Python
iPython pylab模式启动方式
Apr 24 Python
Python中的Cookie模块如何使用
Jun 04 Python
详解vscode实现远程linux服务器上Python开发
Nov 10 Python
粗暴解决CUDA out of memory的问题
May 22 Python
python发送伪造的arp请求
Jan 09 #Python
python抓取京东价格分析京东商品价格走势
Jan 09 #Python
python实现电子词典
Apr 23 #Python
python中cPickle用法例子分享
Jan 03 #Python
使用python获取CPU和内存信息的思路与实现(linux系统)
Jan 03 #Python
Python群发邮件实例代码
Jan 03 #Python
python切换hosts文件代码示例
Dec 31 #Python
You might like
php巧获服务器端信息
2006/12/06 PHP
php 网页游戏开发入门教程一(webgame+design)
2009/10/26 PHP
简单实现限定phpmyadmin访问ip的方法
2013/03/05 PHP
Thinkphp模板中截取字符串函数简介
2014/06/17 PHP
php简单防盗链实现方法
2015/07/29 PHP
PHP7标量类型declare用法实例分析
2016/09/26 PHP
php实现的网页版剪刀石头布游戏示例
2016/11/25 PHP
去除链接虚线全面分析总结
2006/08/15 Javascript
jQuery Ajax 全解析
2009/02/08 Javascript
用AJAX返回HTML片段中的JavaScript脚本
2010/01/04 Javascript
从零学JS之你需要了解的几本书
2014/05/19 Javascript
jquery制作select列表双向选择示例代码
2014/09/02 Javascript
深入浅析NodeJs并发异步的回调处理
2015/12/21 NodeJs
JS获取中文拼音首字母并通过拼音首字母快速查找页面内对应中文内容的方法【附demo源码】
2016/08/19 Javascript
解析JavaScript实现DDoS攻击原理与保护措施
2016/12/26 Javascript
jQuery+C#实现参数RSA加密传输功能【附jsencrypt.js下载】
2017/06/26 jQuery
vue.js动画中的js钩子函数的实现
2018/07/06 Javascript
Vue.js@2.6.10更新内置错误处机制Fundebug同步支持相应错误监控
2019/05/13 Javascript
vuex分模块后,实现获取state的值
2020/07/26 Javascript
[44:50]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 TNC vs VG
2018/04/02 DOTA
[30:55]完美世界DOTA2联赛PWL S2 Magma vs LBZS 第二场 11.18
2020/11/18 DOTA
Django实现表单验证
2018/09/08 Python
Python3数字求和的实例
2019/02/19 Python
Python+threading模块对单个接口进行并发测试
2019/06/25 Python
Python 分享10个PyCharm技巧
2019/07/13 Python
Python with语句和过程抽取思想
2019/12/23 Python
英国高档时尚男装购物网站:MR PORTER
2016/08/09 全球购物
巴黎欧莱雅法国官网:L’Oreal Paris
2019/04/30 全球购物
Maisons du Monde德国:法国家具和装饰的市场领导者
2019/07/26 全球购物
美国最大的户外装备和服装购物网站:Backcountry
2019/10/15 全球购物
幼儿园园长岗位职责
2013/11/26 职场文书
机械制造专业大学生自我鉴定
2014/09/19 职场文书
教育实践活动对照检查材料
2014/09/23 职场文书
升职自荐书
2019/05/09 职场文书
浅谈node.js中间件有哪些类型
2021/04/29 Javascript
MySQL 使用索引扫描进行排序
2021/06/20 MySQL