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处理PHP数组文本文件实例
Sep 18 Python
详细介绍Python函数中的默认参数
Mar 30 Python
python实现下载整个ftp目录的方法
Jan 17 Python
Python中二维列表如何获取子区域元素的组成
Jan 19 Python
Python中多个数组行合并及列合并的方法总结
Apr 12 Python
对python实现二维函数高次拟合的示例详解
Dec 29 Python
Python的log日志功能及设置方法
Jul 11 Python
Django 使用easy_thumbnails压缩上传的图片方法
Jul 26 Python
python 下 CMake 安装配置 OPENCV 4.1.1的方法
Sep 30 Python
pycharm开发一个简单界面和通用mvc模板(操作方法图解)
May 27 Python
Python爬虫与反爬虫大战
Jul 30 Python
使用python对excel表格处理的一些小功能
Jan 25 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数组对百万数据进行排除重复数据的实现代码
2010/06/08 PHP
PHP判断搜索引擎蜘蛛并自动记忆到文件的代码
2012/02/04 PHP
解决FastCGI 进程超过了配置的活动超时时限的问题
2013/07/03 PHP
wordpress自定义url参数实现路由功能的代码示例
2013/11/28 PHP
destoon首页调用求购供应信息的地区名称的方法
2014/08/21 PHP
PHP登录验证码的实现与使用方法
2016/07/07 PHP
php实现生成带二维码图片并强制下载功能
2018/02/24 PHP
跨浏览器的事件对象介绍
2012/06/27 Javascript
基于JQuery模仿苹果桌面的Dock效果(初级版)
2012/10/15 Javascript
IE下JS读取xml文件示例代码
2013/08/05 Javascript
什么是Node.js?Node.js详细介绍
2014/06/01 Javascript
jQuery实现form表单基于ajax无刷新提交方法详解
2015/12/08 Javascript
JS传递对象数组为参数给后端,后端获取的实例代码
2016/06/28 Javascript
KnockoutJS 3.X API 第四章之表单submit、enable、disable绑定
2016/10/10 Javascript
jquery实现全选、全不选以及单选功能
2017/03/23 jQuery
Vue.js实现网格列表布局转换方法
2017/08/25 Javascript
JSON 数据格式详解
2017/09/13 Javascript
利用jsonp与代理服务器方案解决跨域问题
2017/09/14 Javascript
javaScript实现复选框全选反选事件详解
2020/11/20 Javascript
Node做中转服务器转发接口
2017/10/18 Javascript
vue 文件目录结构详解
2017/11/24 Javascript
浅谈Angularjs中不同类型的双向数据绑定
2018/07/16 Javascript
vue element中axios下载文件(后端Python)
2019/05/10 Javascript
微信小程序实现侧边分类栏
2019/10/21 Javascript
python 实现语音聊天机器人的示例代码
2018/12/02 Python
python实现一个简单的ping工具方法
2019/01/31 Python
树莓派4B+opencv4+python 打开摄像头的实现方法
2019/10/18 Python
wxpython绘制圆角窗体
2019/11/18 Python
德国领先的大尺码和超大尺码男装在线零售商:Bigtex
2019/06/22 全球购物
生物化工专业个人自荐信
2013/09/26 职场文书
领导失职检讨书
2014/02/24 职场文书
银行纠风工作实施方案
2014/06/08 职场文书
感恩老师演讲稿600字
2014/08/28 职场文书
小学师德师风演讲稿
2014/09/02 职场文书
2014年党小组工作总结
2014/12/20 职场文书
python如何将mat文件转为png
2022/07/15 Python