比较两个文件的不一样之处用处仍是比较大的,特别是比较两个版本的不一样之处html
[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的效果 python