比较两个文件的不同之处用处还是比较大的,特别是比较两个版本的不同之处
[root@localhost python]# cat diftest.py
#!/usr/bin/python
import difflib
import sys
try:
file1=sys.argv[1] #第一个参数文件
file2=sys.argv[2] #第二个参数文件
except Exception,e:
print "Error: %s"%str(e)
sys.exit()
def readfile(filename): #相对来说,可以考虑调用函数,因为需要处理两个文件
try: #检测异常
df=open(filename,"rb") #打开文件
text=df.read().splitlines() #读取文件内容,并根据行进行分割
df.close() #关闭文件
return text #返回文件内容字符串
except IOError,e: #抛出异常
print "ERROR: %s"%str(e)
sys.exit()
if file1=="" or file2=="":
print "please input filename and filename"
sys.exit()
file1_lines=readfile(file1)
file2_lines=readfile(file2)
diff=difflib.HtmlDiff() #创建HtmlDiff类对象
print diff.make_file(file1_lines,file2_lines)
[root@localhost python]# ./diftest.py ip.py ip.py1 >a.html
[root@localhost python]# cat ip.py
#!/usr/bin/python
from IPy import IP
print IP('192.168.0.0/16').version()
ipok=IP('192.0.0.0/8')
i=IP('192.168.1.100')
print ip1.reverseNames()
ip.len()
#for x in ip:
# print(x)
[root@localhost python]# cat ip.py1
#!/usr/bin/python
from IPy import IP
print IP('192.168.0.0/16').version()
ip=IP('192.0.0.0/80')
ip1=IP('192.168.1.100')
print ip1.reverseNames()
print ip.len().linux
#for x in ip:
# print(x)
kkkk
[root@localhost python]#
看一下a.html的效果