您的位置:首页 > 编程语言 > Python开发

使用python比较两个文件的不同之处

2017-07-08 21:21 351 查看
比较两个文件的不同之处用处还是比较大的,特别是比较两个版本的不同之处

[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的效果

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: