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=True)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.Differ()result = list(d.compare(text1,text2))result = ''.join(result)print(result)"""运行结果以文本行方式显示,不容易理解"""#第二种方式:d = difflib.HtmlDiff()with open('diffirent.html','w') as f: f.write(d.make_file(text1,text2))"""生成一个html文件,用浏览器打开,会显示两个文本内容的不同之处"""
第一种方式:
第二种方式:
直接比较两个文件:
import difflibfile1 = '/etc/passwd'file2 = '/tmp/passwd'with open(file1) as f1,open(file2) as f2: text1 = f1.readlines() text2 = f2.readlines()d = difflib.HtmlDiff()with open('passwd.html','w') as f: f.write(d.make_file(text1,text2))
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。