Python写的比较2个文件不同的程序,python写程序,Python写的比较2个
Python写的比较2个文件不同的程序,python写程序,Python写的比较2个
Python写的比较2个文件不同的程序,如果其中有1个文件不同,就会返回第一个不同的地方的行号和列号。
下面给出比较文件的Python源代码:
# 用Python比较两个文件,这次比较.txt文件不比较python文件# 如果相同返回0def 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 = 0col = 0#学习Python上编橙之家 www.iplaypy.com!#开始比较内容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 删除过期文
- 分享Python获取文件及文件夹大小的方法源码,python源码
- 最简单Python删除目录下文件内容的方法代码,python代码
- Python文件合并与分割操作方法工具,python文件合并,编橙
- 如何用Python创建生成xml文档文件的方法,pythonxml,用Py
- 用Python解压缩rar、zip文件的方法,python解压缩rarzip,编橙
- 游戏水桶倒水问题Python语言的解决方法,倒水python,Py
- Python算法--最长公共子串算法代码讲解,python算法,Pyt
- 如何用Python os.path.walk方法遍历搜索文件内容的操作详解
- Python脚本随机生成中文验证码源码实例分析,python实例
评论关闭