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 相关文章推荐
Python原始字符串(raw strings)用法实例
Oct 13 Python
python实现Floyd算法
Jan 03 Python
python爬虫面试宝典(常见问题)
Mar 02 Python
Python cookbook(数据结构与算法)通过公共键对字典列表排序算法示例
Mar 15 Python
解决python3捕获cx_oracle抛出的异常错误问题
Oct 18 Python
Python闭包和装饰器用法实例详解
May 22 Python
Python实现K折交叉验证法的方法步骤
Jul 11 Python
Django框架基础模板标签与filter使用方法详解
Jul 23 Python
Python基于Hypothesis测试库生成测试数据
Apr 29 Python
Python命名空间namespace及作用域原理解析
Jun 05 Python
python 图像插值 最近邻、双线性、双三次实例
Jul 05 Python
pandas处理csv文件的方法步骤
Oct 16 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 simple_html_dom.php+正则 采集文章代码
2009/12/24 PHP
PHP生成验证码时“图像因其本身有错无法显示”的解决方法
2013/08/07 PHP
Session的工作机制详解和安全性问题(PHP实例讲解)
2014/04/10 PHP
php中HTTP_REFERER函数用法实例
2014/11/21 PHP
ThinkPHP 3.2.2实现事务操作的方法
2017/05/05 PHP
php+mysql开发的最简单在线题库(在线做题系统)完整案例
2019/03/30 PHP
JQuery困惑—包装集 DOM节点
2009/10/16 Javascript
JavaScript获取浏览器信息的方法
2015/11/20 Javascript
javascript 使用正则test( )第一次是 true,第二次是false
2017/02/22 Javascript
利用Vue实现移动端图片轮播组件的方法实例
2017/08/23 Javascript
微信小程序之多文件下载的简单封装示例
2018/01/29 Javascript
webpack external模块的具体使用
2018/03/10 Javascript
axios简单实现小程序延时loading指示
2018/07/30 Javascript
对于防止按钮重复点击的尝试详解
2019/04/22 Javascript
微信小程序swiper禁止用户手动滑动代码实例
2019/08/23 Javascript
在vue项目中引用Antv G2,以饼图为例讲解
2020/10/28 Javascript
Python的设计模式编程入门指南
2015/04/02 Python
下载python中Crypto库报错:ModuleNotFoundError: No module named ‘Crypto’的解决
2018/04/23 Python
python通过伪装头部数据抵抗反爬虫的实例
2018/05/07 Python
Python基础之循环语句用法示例【for、while循环】
2019/03/23 Python
解决pycharm下pyuic工具使用的问题
2020/04/08 Python
解决python使用list()时总是报错的问题
2020/05/05 Python
Python爬取阿拉丁统计信息过程图解
2020/05/12 Python
Python collections.defaultdict模块用法详解
2020/06/18 Python
Virtualenv 搭建 Py项目运行环境的教程详解
2020/06/22 Python
python3.9.1环境安装的方法(图文)
2021/02/02 Python
CSS3制作hover下划线动画
2017/03/27 HTML / CSS
企业厂长岗位职责
2013/12/17 职场文书
建材投资建议书
2014/05/16 职场文书
派出所正风肃纪剖析材料
2014/10/10 职场文书
2014年机关党建工作总结
2014/11/11 职场文书
运动会加油稿20字
2014/11/15 职场文书
全国法制宣传日活动总结
2015/05/05 职场文书
有关三国演义的读书笔记
2015/06/25 职场文书
运动会宣传稿100字
2015/07/23 职场文书
Win11如何启用启动修复 ? Win11执行启动修复的三种方法
2022/04/08 数码科技