一: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——文件对比相关推荐

  1. 使用Python解决对比出两个Excel文件中的不同项并将结果重新写入一个新的Excel文件

    使用Python解决对比出两个Excel文件中的不同项并将结果重新写入一个新的Excel文件 因为有统计成员到会情况的任务,每次汇总时都很麻烦,需要一个个对应腾讯会议导出名单的成员,然后在总表上进行标 ...

  2. Python中的文件对比(difflib文件对比、Linux文件对比)

    一.difflib文件对比 1.观察对比法 代码块: text1 = ''' 1. Beautiful is better than ugly.2. Explicit is better than i ...

  3. python 文件内容对比

    1.将两份文件内容一行行的对比数据是否有对应的内容 # 倆文件对比 # python3 fileby.py /Users/Desktop/aa.txt /Users/Desktop/aa2.txt # ...

  4. python读取txt文件乱码-python文件乱码

    广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 原文地址:http:www.zisexinghen.cnlikeshare322. ...

  5. python文件编译_编译Python文件

    编译Python文件 一.编译Python文件 为了提高加载模块的速度,强调强调强调:提高的是加载速度而绝非运行速度.python解释器会在__pycache__目录中下缓存每个模块编译后的版本,格式 ...

  6. python 文件指针在文件末尾_python文件操作及seek偏移详解

    一.python文件操作中的编码 本次测试是基于python 2.7.12   OS:Ubuntu16.04  pycharm环境,以及win7下2.7.12; 首先说下汉字在文件中占用的字节数,这个 ...

  7. linux 运行scrapy,python 文件 运行 scrapy

    写了一个scrapy,程序可以跑,没有任何问题. 爬下30个网站的body存入json文件,并且保存为test.json 如果test.json存在就保存到一个新建的test1.json 新建了一个p ...

  8. python文件和数据的格式化_Python文件和数据格式化(教程)

    文件是一个存储在副主存储器的数据序列,可包含任何数据内容. 概念上,文件是数据的集合和抽象,类似的,函数是程序的集合和抽象. 用文件形式组织和表达数据更有效也更加灵活. 文件包括两种形式,文本文件和二 ...

  9. 【Python】| 基于Python实现对比Excel的小工具

    目的:设计一个应用GUI用于对比两个Excel文件 背景:因工作中长于数据打交道,不可避免的会进行简单繁琐数据的对比,故人生苦短我用Python! 思路 1.参数 同一个excel文件两个sheet页 ...

最新文章

  1. Numpy 中的 arange 函数
  2. SSIS教程SQlServer2008R2 (5) 添加错误流重定向
  3. springboot 开发入门,及问题汇总
  4. pythonos pathjson_Python Json数据文件操作原理解析
  5. 使用 SAP Uiveri5 遇到 passport 依赖的问题以及解决方案
  6. ScrollView常用(暂时用上了的)代理方法
  7. Hive的数据模型—桶表
  8. python requests 提示警告 InsecureRequestWarning
  9. pycharm的background task一直更新index,速度慢的解决方法
  10. 第十篇:基于TCP的一对回射客户/服务器程序及其运行过程分析( 上 )
  11. tp5.0 根据经纬度 获取附近信息_Redis怎么实现查找附近的人之数据类型Geospatial...
  12. 探索图片填充模式二--CenterCrop模式的实现
  13. js 实现大小写转换的方法
  14. 允许用户使用 MAK 密钥激活 Office 2010 批量许可版
  15. 【Cf #502 H】The Films(莫队)
  16. 抽奖随机滚动_怎么用EXCEL做个抽奖器
  17. 女人爱与不爱你的表现
  18. 基于51单片机篮球计分器proteus仿真设计
  19. Select下拉框支持搜索,jq插件,使用超级简单!
  20. 爱思唯尔(Elsevier)论文模板中添加作者简介和图片(biography)

热门文章

  1. 安装华为HCL(H3C)时报错及virtual box无法使用问题
  2. PyCharm和Jupyter使用对比
  3. 【收藏】十款免费BT下载神器
  4. python变量的定义_Python变量的定义
  5. 五:Dubbo中Provider参数配置及源码讲解
  6. SAP-MM-移动类型解析之收货02--价值评估冻结库存的收货
  7. 学好 Nginx ,走遍天下都不怕
  8. Ubuntu 22.04 LTS 入门安装配置优化、开发软件安装一条龙
  9. TCP通信常用的send,sendto,recv,recvfrom函数详解
  10. 用python编写西门子plc程序_snap7读写西门子plc1200步骤(python)