python文件比较示例分享
发布时间:2023-03-17 21:10:23
标签:python文件比较
# 比较两个字符串,如果不同返回第一个不相同的位置
# 如果相同返回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.")
0
投稿
猜你喜欢
- 本文实例讲述了Python标准库shutil用法。分享给大家供大家参考,具体如下:shutil模块提供了许多关于文件和文件集合的高级操作,特
- 通过Python中的matplotlib绘制百分比堆叠柱状图,并为每一个类别设置不同的填充图案。主要原因是有些论文打印出是黑白色的,不同类别
- SQL Server数据库连接中常见的错误分析:一."SQL Server 不存在或访问被拒绝"这个是最复杂的,错误发生
- 假如您在安装SQL Server 2005时出现计数器错误,在搜索过所有的方法都不适用的情况下可以采用以下方法:将4个计数器删除:(如果没有
- 一、正则表达式的作用提示:正则表达式是一段特殊的字符串,它表示的是一段有规律的信息。如果我们想从一段文字中提取想要的内容,就可以通过正则表达
- OK,首先写一个python socket的server段,对开放三个端口:10000,10001,10002.krondo的例子中是每个s
- PHP hex2bin() 函数实例把十六进制值转换为 ASCII 字符:<?php echo hex2bin("48656
- OL定义有序列表的时候,除非指定list-style-position:inside;,否则文字和前导符是有缩进的。但有的时候,OL定义的列
- 在我们写样式的时候,页面的CSS在经历几个版本的修改之后,可能有些样式已经用不到了,或许将某些样式更名了而原来的忘了删除,总之页面中可能存在
- 我们平时接触的长乘法,按位相乘,是一种时间复杂度为 O(n ^ 2) 的算法。今天,我们来介绍一种时间复杂度为 O (n ^ log 3)
- 一、wxPython介绍 1.wxPython是Python语言的一套优秀的GUI图形库。wxPytho
- 首先创建如下的数组和矩阵,其中a,b为数组,A,B为矩阵import numpy as npa = np.arange(1,5).resha
- 前几天,为了增强本站的SEO,着手把另一个域名:www.aspxhome.com下的所有页面301转向到www.cidianwang.com
- 神经网络玩得越久就越会尝试一些网络结构上的大改动。先说意图有两个模型:模型A和模型B。模型A的输出可以连接B的输入。将两个小模型连接成一个大
- 在读取文件时候比如读取 xxx.csv 时候 可能报编码错误类似于'xxx' codec can't decode
- urllib中的异常处理在我们写爬虫程序时,若出现url中的错误,那么我们就无法爬取我们想要的内容,对此,我们引入了urllib中的异常处理
- 先看效果,实现一个图片左右摇动,在一般的H5宣传页,商家活动页面我们会看到这样的动画,小程序的动画效果不同于css3动画效果,是通过js来完
- 如果你有一字段dm记录了一个url,为了更好的优化模糊查询速度或统计速度,在数据表原有的结构上增加3个字段,分别为 `sdm`
- 概念简介:朴素贝叶斯基于贝叶斯定理,它假设输入随机变量的特征值是条件独立的,故称之为“朴素”。简单介绍贝叶斯定理:乍看起来似乎是
- 请求钩子通过装饰器为一个模块添加请求钩子, 对当前模块的请求进行额外的处理. 比如权限验证.说白了,就是在执行视图函数前后你可以进行一些处理