python difflib模块实现两个文件差异对比,并输出html格式。

简介:

 difflib 模块包含一些用来计算和处理序列之间差异的工具。它对于比较文本尤其有用,其中包含的函数可以使用多种常用差异格式生成报告。 

实现了三个类: 

  • SequenceMatcher 任意类型序列的比较 (可以比较字符串)

  • Differ 对字符串进行比较

  • HtmlDiff 将比较结果输出为html格式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/usr/bin/env python
#
#-*- coding: utf-8 -*-
import  difflib
import  sys
try:
     textfile1=sys.argv[1]
     textfile2=sys.argv[2]
except Exception as e:
     print( "Error:" +str(e))
     print( "Usage:diff_Simple3.py filename1 filename2" )
     sys. exit ()
def readfile(filename):
     try:
         fileHandle= open (filename, 'rb' )
         text=fileHandle. read ().splitlines()
         fileHandle.close()
         return  text
     except IOError as error:
         print( "Read file Error:" +str(error))
         sys. exit ()
if  textfile1== ""  or textfile2== "" :
     print( "Usage:diff_Simple3" )
     sys. exit ()
text1_lines=readfile(textfile1)
text2_lines=readfile(textfile2)
d = difflib.HtmlDiff()
print(d.make_file(text1_lines,text2_lines))










本文转自 SoulMio 51CTO博客,原文链接:http://blog.51cto.com/bovin/1940971,如需转载请自行联系原作者
目录
相关文章
|
18天前
|
SQL 关系型数据库 数据库
Python SQLAlchemy模块:从入门到实战的数据库操作指南
免费提供Python+PyCharm编程环境,结合SQLAlchemy ORM框架详解数据库开发。涵盖连接配置、模型定义、CRUD操作、事务控制及Alembic迁移工具,以电商订单系统为例,深入讲解高并发场景下的性能优化与最佳实践,助你高效构建数据驱动应用。
182 7
|
22天前
|
JSON 算法 API
Python中的json模块:从基础到进阶的实用指南
本文深入解析Python内置json模块的使用,涵盖序列化与反序列化核心函数、参数配置、中文处理、自定义对象转换及异常处理,并介绍性能优化与第三方库扩展,助你高效实现JSON数据交互。(238字)
208 4
|
19天前
|
Java 调度 数据库
Python threading模块:多线程编程的实战指南
本文深入讲解Python多线程编程,涵盖threading模块的核心用法:线程创建、生命周期、同步机制(锁、信号量、条件变量)、线程通信(队列)、守护线程与线程池应用。结合实战案例,如多线程下载器,帮助开发者提升程序并发性能,适用于I/O密集型任务处理。
171 0
|
20天前
|
XML JSON 数据处理
超越JSON:Python结构化数据处理模块全解析
本文深入解析Python中12个核心数据处理模块,涵盖csv、pandas、pickle、shelve、struct、configparser、xml、numpy、array、sqlite3和msgpack,覆盖表格处理、序列化、配置管理、科学计算等六大场景,结合真实案例与决策树,助你高效应对各类数据挑战。(238字)
113 0
|
数据采集 前端开发 机器人
Python:处理一些格式规范的文字
Python:处理一些格式规范的文字
183 0
Python:处理一些格式规范的文字
|
2月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
234 102
|
2月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
269 104
|
2月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
229 103
|
2月前
|
机器学习/深度学习 人工智能 数据挖掘
Python:现代编程的首选语言
Python:现代编程的首选语言
170 82
|
18天前
|
Python
Python编程:运算符详解
本文全面详解Python各类运算符,涵盖算术、比较、逻辑、赋值、位、身份、成员运算符及优先级规则,结合实例代码与运行结果,助你深入掌握Python运算符的使用方法与应用场景。
130 3

推荐镜像

更多