python——文件对比
一:difflib文件对比
在这个模块中,我们需要了解的知识:
'+' 包含在第二个系列行中,但不包含第一个
'-' 包含在第一个系列行中,但不包含第二个
' ' 两个系列行一致
'?' 存在增量差异
'^' 存在差异字符
第一种对比方法:
import difflibtext1 = ''' 1. Beautiful is better than ugly.2. Explicit is better than implicit.3. Simple is better than complex.4. Complex is better than complicated.'''.splitlines(keepends=False)text2 = ''' 1. Beautiful is better than ugly.3. Simple is better than complex.4. Complicated is better than complex.5. Flat is better than nested.'''.splitlines(keepends=Trued = difflib.Differ()
print(''.join(d.compare(text1,text2)))
你觉得
但是以上这种方式比较起来让人觉得“眼花缭乱”,为了简洁明了,我们还可以采用另一种方式。
第二种对比方式:
import difflibtext1 = ''' 1. Beautiful is better than ugly.2. Explicit is better than implicit.3. Simple is better than complex.4. Complex is better than complicated.'''.splitlines(keepends=False)text2 = ''' 1. Beautiful is better than ugly.3. Simple is better than complex.4. Complicated is better than complex.5. Flat is better than nested.'''.splitlines(keepends=True)d = difflib.HtmlDiff()
htmlContent = d.make_file(text1,text2)
# print(htmlContent)
with open('diff.html','w') as f:f.write(htmlContent)
在我们项目的文件夹里会生成一个对比的html文件,用浏览器打开,就可以看见如下所示:
二:linux文件对比
前提条件:
代码如下:
import difflibfilename1 = '/tmp/passwd'
filename2 = '/tmp/passwd1'with open(filename1) as f1,open(filename2) as f2:content1 = f1.read().splitlines(keepends=True)content2 = f2.read().splitlines(keepends=True)d = difflib.HtmlDiff()
htmlContent = d.make_file(content1,content2)with open('passwdDiff.html','w') as f:f.write(htmlContent)
python——文件对比相关推荐
- 使用Python解决对比出两个Excel文件中的不同项并将结果重新写入一个新的Excel文件
使用Python解决对比出两个Excel文件中的不同项并将结果重新写入一个新的Excel文件 因为有统计成员到会情况的任务,每次汇总时都很麻烦,需要一个个对应腾讯会议导出名单的成员,然后在总表上进行标 ...
- Python中的文件对比(difflib文件对比、Linux文件对比)
一.difflib文件对比 1.观察对比法 代码块: text1 = ''' 1. Beautiful is better than ugly.2. Explicit is better than i ...
- python 文件内容对比
1.将两份文件内容一行行的对比数据是否有对应的内容 # 倆文件对比 # python3 fileby.py /Users/Desktop/aa.txt /Users/Desktop/aa2.txt # ...
- python读取txt文件乱码-python文件乱码
广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 原文地址:http:www.zisexinghen.cnlikeshare322. ...
- python文件编译_编译Python文件
编译Python文件 一.编译Python文件 为了提高加载模块的速度,强调强调强调:提高的是加载速度而绝非运行速度.python解释器会在__pycache__目录中下缓存每个模块编译后的版本,格式 ...
- python 文件指针在文件末尾_python文件操作及seek偏移详解
一.python文件操作中的编码 本次测试是基于python 2.7.12 OS:Ubuntu16.04 pycharm环境,以及win7下2.7.12; 首先说下汉字在文件中占用的字节数,这个 ...
- linux 运行scrapy,python 文件 运行 scrapy
写了一个scrapy,程序可以跑,没有任何问题. 爬下30个网站的body存入json文件,并且保存为test.json 如果test.json存在就保存到一个新建的test1.json 新建了一个p ...
- python文件和数据的格式化_Python文件和数据格式化(教程)
文件是一个存储在副主存储器的数据序列,可包含任何数据内容. 概念上,文件是数据的集合和抽象,类似的,函数是程序的集合和抽象. 用文件形式组织和表达数据更有效也更加灵活. 文件包括两种形式,文本文件和二 ...
- 【Python】| 基于Python实现对比Excel的小工具
目的:设计一个应用GUI用于对比两个Excel文件 背景:因工作中长于数据打交道,不可避免的会进行简单繁琐数据的对比,故人生苦短我用Python! 思路 1.参数 同一个excel文件两个sheet页 ...
最新文章
- Numpy 中的 arange 函数
- SSIS教程SQlServer2008R2 (5) 添加错误流重定向
- springboot 开发入门,及问题汇总
- pythonos pathjson_Python Json数据文件操作原理解析
- 使用 SAP Uiveri5 遇到 passport 依赖的问题以及解决方案
- ScrollView常用(暂时用上了的)代理方法
- Hive的数据模型—桶表
- python requests 提示警告 InsecureRequestWarning
- pycharm的background task一直更新index,速度慢的解决方法
- 第十篇:基于TCP的一对回射客户/服务器程序及其运行过程分析( 上 )
- tp5.0 根据经纬度 获取附近信息_Redis怎么实现查找附近的人之数据类型Geospatial...
- 探索图片填充模式二--CenterCrop模式的实现
- js 实现大小写转换的方法
- 允许用户使用 MAK 密钥激活 Office 2010 批量许可版
- 【Cf #502 H】The Films(莫队)
- 抽奖随机滚动_怎么用EXCEL做个抽奖器
- 女人爱与不爱你的表现
- 基于51单片机篮球计分器proteus仿真设计
- Select下拉框支持搜索,jq插件,使用超级简单!
- 爱思唯尔(Elsevier)论文模板中添加作者简介和图片(biography)
热门文章
- 安装华为HCL(H3C)时报错及virtual box无法使用问题
- PyCharm和Jupyter使用对比
- 【收藏】十款免费BT下载神器
- python变量的定义_Python变量的定义
- 五:Dubbo中Provider参数配置及源码讲解
- SAP-MM-移动类型解析之收货02--价值评估冻结库存的收货
- 学好 Nginx ,走遍天下都不怕
- Ubuntu 22.04 LTS 入门安装配置优化、开发软件安装一条龙
- TCP通信常用的send,sendto,recv,recvfrom函数详解
- 用python编写西门子plc程序_snap7读写西门子plc1200步骤(python)