神剑山庄资源网 Design By www.hcban.com

模块:difflib

安装:Python版本大于等于2.3系统自带

功能:对比文本之间的差异,而且支持输出可读性比较强的HTML文档,与Linux中的diff命令比较相似。

两个字符串的差异对比:

#import difflib
 
#text1='''
 
#hello world.
 
#how are you.
 
#nice to meet you.
 
#'''
 
#text1_lines=text1.splitlines() # 以行进行分割,便于进行对比
 
#text2='''
 
#Hello World.
 
#how are you!
 
#Nice to meet you~
 
#'''
 
#text2_lines=text2.splitlines() # 以行进行分割,便于进行对比
 
#dif1=difflib.Differ() # 创建Differ() 对象
 
#diff1=dif1.compare(text1_lines,text2_lines) # 采用compare() 方法对字符串进行比较
 
#print('\n'.join(list(diff1)))

此外difflib 还有SequenceMatcher()类,此类支持任意类型序列的比较;还有HtmlDiff() 类,此类支持将比较结果以HTML格式输出。

符号含义说明:

符号

含义

'-'

包含在第一个序列行中,但不包含在第二个序列行

'+'

包含在第二个序列行中,但不包含在第一个序列行

' '

两个序列行一致

'"color: #ff0000">生成HTML格式文档:

#import difflib
#text1='''
 
#hello world.
 
#how are you.
 
#nice to meet you.
 
#'''
 
#text1_lines=text1.splitlines() # 以行进行分割,便于进行对比
 
#text2='''
 
#Hello World.
 
#how are you!
 
#Nice to meet you~
 
#'''
 
#text2_lines=text2.splitlines() # 以行进行分割,便于进行对比
 
#d=difflib.HtmlDiff()
 
#print(d.make_file(text1_lines,text2_lines))
 
# 之后使生成的文件变为 .html即可使用浏览器查看

对比配置文件差异:

#import difflib
 
#import os
 
#try:
 
# textfile1=sys.argv[1] # 第1个配置文件路径参数
 
# textfile2=sys.argv[2] # 第2个配置文件路径参数
 
#except Exception,e:
 
# print('Error:'+str(e))
 
# print('使用:脚本名.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('读取文件错误:'+str(error))
 
# sys.exit()
 
#if textfile1=='or textfile2==':
 
# print('使用:脚本名.py filename1 filename2')
 
# sys.exit()
 
#text1_lines=readfile(textfile1) # 调用readfile获取分隔后的字符串
 
#text2_lines=readfile(textfile2)
 
#d=difflib.HtmlDiff() # 创建HtmlDiff() 类对象
 
#print(d.make_file(text1_lines,text2_lines)) # 通过make_file() 方法输出HTML格式的结果

以上这篇Python自动化运维_文件内容差异对比分析就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

标签:
python,自动化,运维

神剑山庄资源网 Design By www.hcban.com
神剑山庄资源网 免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
神剑山庄资源网 Design By www.hcban.com

评论“Python自动化运维_文件内容差异对比分析”

暂无Python自动化运维_文件内容差异对比分析的评论...

P70系列延期,华为新旗舰将在下月发布

3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。

而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?

根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。