#!/usr/bin/env python
#coding:utf-8
import difflib
#字符串比较
text1 = """text1:
This module provides classes and functions for comparing sequences.
including HTML and context and unified diffs
difflib document V7.4
and string
"""
text1_lines = text1.splitlines() #按行切割
text2 = """text2:
This module provides classes and functions for comparing sequences.
including HTML and context and unifiled diffs.
difflb document V7.5"""
text2_lines = text2.splitlines()
def diffstr():
d = difflib.Differ() #创建Differ对象
diff = d.compare(text1_lines,text2_lines)
print "\n".join(list(diff))
d = difflib.HtmlDiff() #生成html,用 python difflib_l1.py > result.html,网页查看结果
print d.make_file(text1_lines,text2_lines)
#文件比较
import sys
try:
textfile1 = sys.argv[1]
textfile2 = sys.argv[2]
except Exception,e:
print "Error:" + str(e)
print "Usage: ./simple filename1 filename2"
sys.exit()
def readline(filename): #等于文件读取函数
try:
fileHandle = open(filename,'rb')
text = fileHandle.read().splitlines() #读取文件内容,按行切割
fileHandle.close()
return text
except IOError as error:
print("Read file Error:"+str(error))
sys.exit()
text1_lines = readline(textfile1)
text2_lines = readline(textfile2)
d = difflib.HtmlDiff()
print d.make_file(text1_lines,text2_lines)