python中difflib_python中的difflib
#############difflib##############
文件差异对比
示例1:
import difflib
text1 = 'hello westos'
text2 = 'hello zhan'
text1_lines = text1.splitlines()
text2_lines = text2.splitlines()
# 创建diff对象
d = difflib.Differ()
# 采用compare方法对字符串进行比较
diff = d.compare(text1_lines, text2_lines)
# print list(diff)
print '\n'.join(list(diff))
text1='''root:x:0:wfew0:root:/root:/bin/bash
bin:x:1fw:1:bin:/bin:/sbwefwin/nologin
daemon:xw:2:2:daefwmon:/sbin:/sbin/nologin
adm:x:3:4:adwfwfm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
synsfwfsc:x:5:0:sync:/sbin:/bin/sync
shautdowfwfwn:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
'''
text2='''rot:x:0:0:root:/root:/bin/bash
bin:x:1:1:bi:/bin:/sbin/nologindaem
on:x:2:2:daemon:/sbin:/sbin/login
adm:x:3:4:adm:var/adm:/sbin/nolog
lp:x:4:7:lp:/var/spool/lpd:/sbin/nolo
gisync:x:5:0:sync:/sbin:/bin/sync
utdown:x:6:0:shtdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
'''
第一种方法
import difflib
text1_lines=text1.splitlines()
text2_lines=text2.splitlines()
d=difflib.Differ()
a=d.compare(text1_lines,text2_lines)
a=list(a)
print '\n'.join(a)
测试:
第二种方法
import difflib
text1_lines=text1.splitlines()
text2_lines=text2.splitlines()
# d=difflib.Differ()
# a=d.compare(text1_lines,text2_lines)
# a=list(a)
# print '\n'.join(a)
d=difflib.HtmlDiff()
htmldata=d.make_file(text1_lines,text2_lines)
with open('/root/Desktop/data.html','a+') as f:
f.write(htmldata)
测试:
文件差异对比
'-' 包含在第一个中,但不包含在第二个中
'+' 包含在第二个中,但不包含在第一个中
' ' 两者相同
'?' 两个存在增量差异
'^' 标志出两者行存在的差异字符
python中difflib_python中的difflib相关推荐
- 如何用python读取文本中指定行的内容
如何用python读取文本中指定行的内容 搜索资料 我来答 分享 新浪微博 QQ空间 浏览 5284 次 查看全文 http://www.taodudu.cc/news/show-64036.ht ...
- Python 获取list 中指定元素出现的次数
Python 获取list 中指定元素出现的次数 使用list 的count 方法 list_a = [1, 2, 3, 1, 4, 5, 1] print("1 出现的次数: %d&quo ...
- python删除指定位置的字符串_python去除区域 python删除字符串中指定位置字符
python删除字符串中指定位置字符 原程序是这样的: ser = serial.Serial("/dev/ttyAMA0", 9600) def main字符串的话,你可以把他当 ...
- python 物理学中的应用_利用python求解物理学中的双弹簧质能系统详解
前言 本文主要给大家介绍了关于利用python求解物理学中双弹簧质能系统的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 物理的模型如下: 在这个系统里有两个物体,它们的质 ...
- Python,OpenCV中的图像修复——cv2.inpaint()
Python,OpenCV中的图像修复--cv2.inpaint 1. 效果图 2. 原理 3. 源码 参考 image inpainting 图像修改 这篇博客将介绍如何通过OpenCV中图像修复的 ...
- Python,OpenCV中的K均值聚类——K-Means Cluster
Python,OpenCV中的K均值聚类 1. 效果图 2. 原理 2.1 什么是K均值聚类? 2.2 K均值聚类过程 2.3 cv2.kmeans(z, 2, None, criteria, 10, ...
- Python,OpenCV中的霍夫圆变换——cv2.HoughCircles()
Python,OpenCV中的霍夫圆变换 1. 效果图 2. 源码 参考 这篇博客将学习如何使用霍夫圆变换在图像中找到圆圈,OpenCV使用cv2.HoughCircles()实现霍夫圆变换. cir ...
- Python,OpenCV中的非局部均值去噪(Non-Local Means Denoising)
Python,OpenCV中的非局部均值去噪(Non-Local Means Denoising) 1. 效果图 2. 原理 3. 源码 2.1 单彩色图去噪 2.2 多连续彩色帧去噪 参考 这篇博客 ...
- Python,OpenCV中的K近邻(knn K-Nearest Neighbor)及改进版的K近邻
Python,OpenCV中的K近邻(knn K-Nearest Neighbor)及改进版的K近邻 1. 效果图 2. 源码 参考 这篇博客将介绍将K-最近邻 (KNN K-Nearest Neig ...
最新文章
- 硬件平台上深度学习自动内核优化
- 普通的年轻状态机,纯C语言
- c语言虚函数是什么,C语言中什么函数不能声明为虚函数?
- win7磁盘清理_window7越来越卡?系统残余文件太多,磁盘清理可以搞定!!
- 2014/School_C_C++_A/6/“数独”游戏
- mybatis3中@SelectProvider的使用技巧
- “有些重要的事要告诉你” !小米春季新品发布会定档3月29日
- AI2想从常识测试开始让AI理解物理世界,数据集已公布
- 新道电子沙盘系统_电子沙盘系统在房地产开发与销售过程中的优势
- ElasticStack系列之九 master、data 和 client 节点
- (转载)Memcached预定义常量
- 用户常见的问题以及特殊技术问题
- 标学教育计算机等级考试系统,标学教育电脑版
- Google Ads关键词不展示原因及解决方案
- 审批流程展示html,审批流程图怎么绘制?不懂可以看这里
- 【raft】学习五:日志结构raftLog
- php扩展库后门,编写基于PHP扩展库的后门
- 智能家居远程监控系统的设计及实现
- 天刀服务器维护时间,《天涯明月刀》2021年3月10日服务器例行维护公告 服务器例行维护怎么样...
- C/C++ memset使用
热门文章
- Hadoop权威指南 _01前言感悟
- PAT1001 A+B Format (20 分)
- netty系列之:使用UDP协议
- 万字长文深入理解java中的集合-附PDF下载
- DPDK精准测量时间
- Leet Code OJ 338. Counting Bits [Difficulty: Medium]
- 用与非门设计血型配对电路_电路板中与非门集成电路的控制原理
- mysql分析sql语句基础工具 —— explain
- 【解题报告】Leecode 519. 随机翻转矩阵——Leecode每日一题系列
- 【三次优化】剑指 Offer 35. 复杂链表的复制