python标准库说明_python标准库difflib介绍

python标准库difflib介绍

简介

从python2.3起difflib成为了标准库。无需安装即可使用。

之前遇到一个问题,我本地的代码没有问题,而服务器上的则一直报404错误。肉眼对比了一下路径,感觉是完全一样的。在网上找了下字符串对比工具,没有一个好用。

后来还是有个同事眼力好,发现有个一字符的大小写问题导致的。那会如果知道python有difflib库的话,早就把问题解决了。

简单的对比

以下示例是一个相当简单的代码。

import difflib

text1 = """

"""

text2 = '''

'''

text1_lines = text1.splitlines()

text2_lines = text2.splitlines()

d = difflib.Differ()

diff = d.compare(text1_lines, text2_lines)

print('\n'.join(list(diff)))

输出示例:

Template Name: Metronic – Responsive Admin Dashboard Template build with Twitter Bootstrap 3.3.6

– Version: 4.5.4

? ^

Version: 4.5.5

? ^

Author: alston

Author: KeenThemes

Purchase: http://themefrest.net/item/metronic-responsive-admin-dashboard-template/4021469?ref=keenthemes

License: You must have a valid license purchased only from themeforest(the above link) in order to legally use the theme for your project.

–>

看着真是费劲,-,+,?,。能感觉出来-是少了,+是增加了,?和表示存在差异。

试试html美化的

修改比较简单。只要把

d = difflib.Differ()

diff = d.compare(text1_lines, text2_lines)

print('\n'.join(list(diff)))

替换成

d = difflib.HtmlDiff()

print(d.make_file(text1_lines, text2_lines))

即可。

看着还不错。会用颜色标识出来。

更多对比工具

标准库里还有个filecmp库,支持单文件对比,多文件对比,目录对比。

Tags:原创

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值