python进行文件对比的方法


Posted in Python onDecember 24, 2018

文件对比是否一致,我们一般采用md5值对比,假如一样,代表文件一致,不一样说明不一致

假如想要详细的对比信息内容,difflib库提供了文件对比的详细信息和结果

1、首先我们查看下md5值的使用方法

我们先建立几个示例文件方便我们参考,文件file1,file1_copy,file2

python进行文件对比的方法

2、file1的内容和file1_copy的内容一致,都为

我是文件hello

为了测试我们的文件一致性

python进行文件对比的方法

3、file2的内容和file1的文件有所区别,内容为:

我是文件world

python进行文件对比的方法

4、接下来就是获取md5的方法,我可以了个公共方法,大家直接调用就好

需要导入包

import os

import hashlib

def get_file_md5(filename):

  if not os.path.isfile(filename):

    return

  md5 = hashlib.md5()

  f = file(filename,'rb')

  while True:

    b = f.read(8096)

    if not b:

      break

    md5.update(b)

  f.close()

  return md5.hexdigest()

然后我们打印下这几个文件的md5值

print 'file1   的md5:%s' % get_file_md5('file1.txt')

print 'file1_copy的md5:%s' % get_file_md5('file1_copy.txt')

print 'file2   的md5:%s' % get_file_md5('file2.txt')

python进行文件对比的方法

5、运行python结果可以看到,file1和file1_copy文件的md5值是一样的,说明这两个文件是一样的,file2和他们不一样

python进行文件对比的方法

6、接下来就是使用difflib详细的对比了,写法如下:

import difflib

import sys

file1 = open('file1.txt', 'U').readlines()

file2 = open('file2.txt', 'U').readlines()

diff = difflib.ndiff(file1, file2)

sys.stdout.writelines(diff)

python进行文件对比的方法

7、运行python结果可以看到,具体两个文件的区别

  我是文件

- hello+ world

python进行文件对比的方法

总结:以上就是本次关于python怎样进行文件对比的操作方法,感谢大家的阅读和对三水点靠木的支持。

Python 相关文章推荐
OpenCV2.3.1+Python2.7.3+Numpy等的配置解析
Jan 05 Python
详谈python中冒号与逗号的区别
Apr 18 Python
python实现校园网自动登录的示例讲解
Apr 22 Python
Python 给定的经纬度标注在地图上的实现方法
Jul 05 Python
简单了解Django应用app及分布式路由
Jul 24 Python
Python中IP地址处理IPy模块的方法
Aug 16 Python
python 实现在shell窗口中编写print不向屏幕输出
Feb 19 Python
jupyter notebook 增加kernel教程
Apr 10 Python
Python实现转换图片背景颜色代码
Apr 30 Python
Java ExcutorService优雅关闭方式解析
May 30 Python
Python使用xlrd实现读取合并单元格
Jul 09 Python
python 模块重载的五种方法
Apr 24 Python
Python二叉树的遍历操作示例【前序遍历,中序遍历,后序遍历,层序遍历】
Dec 24 #Python
详解Python进阶之切片的误区与高级用法
Dec 24 #Python
Python数据抓取爬虫代理防封IP方法
Dec 23 #Python
python3爬虫怎样构建请求header
Dec 23 #Python
windows下搭建python scrapy爬虫框架步骤
Dec 23 #Python
python构建基础的爬虫教学
Dec 23 #Python
Flask之请求钩子的实现
Dec 23 #Python
You might like
用PHP和ACCESS写聊天室(一)
2006/10/09 PHP
PHP array_multisort() 函数的深入解析
2013/06/20 PHP
PHP实现算式验证码和汉字验证码实例
2015/03/09 PHP
js兼容标准的表格变色效果
2008/06/28 Javascript
jQuery 各种浏览器下获得日期区别
2008/12/22 Javascript
在VS2008中使用jQuery智能感应的方法
2010/12/30 Javascript
javascript中String类的subString()方法和slice()方法
2011/05/24 Javascript
jQuery 1.9使用$.support替代$.browser的使用方法
2014/05/27 Javascript
Vuex之理解Store的用法
2017/04/19 Javascript
JS实现留言板功能
2017/06/17 Javascript
详解angularjs获取元素以及angular.element()用法
2017/07/25 Javascript
理解 Node.js 事件驱动机制的原理
2017/08/16 Javascript
jQuery实现的简单无刷新评论功能示例
2017/11/08 jQuery
详解浏览器缓存和webpack缓存配置
2018/07/06 Javascript
jQuery实现的中英文切换功能示例
2019/01/11 jQuery
一个Java程序猿眼中的前后端分离以及Vue.js入门(推荐)
2019/04/19 Javascript
Elementui表格组件+sortablejs实现行拖拽排序的示例代码
2019/08/28 Javascript
vue-router的钩子函数用法实例分析
2019/10/26 Javascript
webpack的 rquire.context用法实现工程自动化的方法
2020/02/07 Javascript
JS面试题中深拷贝的实现讲解
2020/05/07 Javascript
Element实现表格嵌套、多个表格共用一个表头的方法
2020/05/09 Javascript
python使用itchat实现手机控制电脑
2018/02/22 Python
对python 生成拼接xml报文的示例详解
2018/12/28 Python
对python tkinter窗口弹出置顶的方法详解
2019/06/14 Python
Python从列表推导到zip()函数的5种技巧总结
2019/10/23 Python
基于Keras中Conv1D和Conv2D的区别说明
2020/06/19 Python
浅析Python中字符串的intern机制
2020/10/03 Python
python 实时调取摄像头的示例代码
2020/11/25 Python
让IE9以下版本的浏览器兼容HTML5的方法
2014/03/12 HTML / CSS
骆驼官方商城:CAMEL
2016/11/22 全球购物
抽样调查项目计划书
2014/04/24 职场文书
先进教师事迹材料
2014/12/16 职场文书
综合素质评价个性发展自我评价
2015/03/06 职场文书
中学生国庆节演讲稿2015
2015/07/30 职场文书
Python爬虫之爬取某文库文档数据
2021/04/21 Python
MySQL 表锁定 LOCK和UNLOCK TABLES的 SQL语法
2022/04/18 MySQL