本文實例講述了Python實現(xiàn)的文本對比報告生成工具。分享給大家供大家參考,具體如下:
借助于difflib的功能,可以針對我們的使用情況進一步進行功能的聚合。我想要的功能是輸入兩個文件名以及一個輸出報告的文件名之后,運行直接給出最終的報告。
代碼實現(xiàn)如下:
import sysimport difflibtry: file1 = sys.argv[1] file2 = sys.argv[2] report = sys.argv[3]except Exception,e: print('Error:' + str(e)) sys.exit()def GetLines(file_name): return open(file_name).readlines()txt_line1 = GetLines(file1)txt_line2 = GetLines(file2)d = difflib.HtmlDiff()fid = open(report,'w')fid.write(d.make_file(txt_line1,txt_line2))fid.close()測試如下:
GreydeMac-mini:Chapter_02 greyzhang$ ls
c01.py d2.py
dns_parser.py pydiff.py
d1.py diff.py
join.py
GreydeMac-mini:Chapter_02 greyzhang$ python diff.py d1.py d2.py report.html
GreydeMac-mini:Chapter_02 greyzhang$ ls
c01.py d2.py
dns_parser.py pydiff.py
d1.py diff.py
join.py report.html
使用瀏覽器打開報告如下:

報告生成成功,而整個操作也簡化了不少。
PS:這里再為大家推薦一款功能相似的在線工具供大家參考使用:
在線文本比較工具:
http://tools.jb51.net/aideddesign/txt_diff
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python文件與目錄操作技巧匯總》、《Python文本文件操作技巧匯總》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進階經(jīng)典教程》
希望本文所述對大家Python程序設(shè)計有所幫助。
新聞熱點
疑難解答
圖片精選