在python的difflib中
HtmlDiff:比较后以html方法展示
我们比较的是字符串:
'hello world!' 和 'hElLO Wor2d!'
具体代码:
1 from difflib import *
2 import os
3
4 def write():
5 if os.path.exists('E:\\info.html'):
6 with open('E:\\info.html','w+') as fp:
7 test = HtmlDiff.make_file(HtmlDiff(), 'hello world!', 'hElLO Wor2d!')
8 fp.write(test)
9 print('生成文件成功!')
10 fp.close()
11
12
13 def main():
14 write()
15
16 if __name__ == '__main__':
17 main()
运行代码:
1 import difflib
2
3 test = difflib.Differ().compare('hello world', 'HeLLO,wOrlD!')
4 print('横向展示:')
5 print(''.join(list(test)))
6 print('#' * 50)
7 test = difflib.Differ().compare('hello world', 'HeLLO,wOrlD!')
8 print('纵向展示:')
9 print('\n'.join(list(test)))
运行代码:
1 import difflib
2
3 def test():
4 test = difflib.SequenceMatcher(lambda x: x == " ", 'hello world', 'HeLLO,wOrlD!')
5 for block in test.get_matching_blocks():
6 print("a[%d] and b[%d] match for %d elements" % block)
7
8 def main():
9 test()
10
11 if __name__ == '__main__':
12 main()