比较两个文件的不同之处用处还是比较大的,特别是比较两个版本的不同之处

[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比较两个文件的不同之处的更多相关文章

  1. 利用python实现两个文件夹的同步

    其实无论windows还是Linux,简单地去实现两个两个文件夹的同步只需系统自带的复制命令加参数就可以了. WINDOWS : xcopy 源文件夹\* 目标文件夹 /s /e /y Linux : ...

  2. python读取两个文件并且判断是否一致

    ''' 判断两个文件是否相同,如果不同请指出第几行不相同 ''' def f1vsf2(name1,name2): f1 = open(name1) f2 = open(name2) count = ...

  3. python 合并两个文件并将合并内容保存在另一个文件中

    简单地文件合并方法 思路如下: 分别读取两个文件中的内容,并将其保存在一个列表中,将列表通过join()函数转为字符,并将新字符保存在新的文件中. 其中,test1.txt中的内容为: test2.t ...

  4. python判断两个文件是否相同

    此方法相当于 Linux 系统下的diff,或者是 git 下的 checkout 官方解释请看: https://docs.python.org/2/library/difflib.html #!/ ...

  5. 基于Python——实现两个文件夹中的文件拷贝

    [背景]当复制一个文件夹中的某文件到另一个文件夹中时是一件很容易的事情,可是如果存在很多文件夹中的文件需要一一拷贝,就会变的很繁琐,稍有不慎就会遗漏,今天就用Python来解决这个问题—— [代码实现 ...

  6. 利用python合并两个文件

    1格式如下 在做利用zabbix的api来批量添加主机的时候,需要处理ip和hostname,在借用别人写的py程序的基础上,自己有改装了以下脚本,为自己使用.需要时ip和hostname为一个统一格 ...

  7. python对比两个文件问题

    写一个比较两个文本文件的程序. 如果不同, 给出第一个不同处的行号和 列号. 比较的时候可以使用zip()函数 a=open('test.txt','r') b=open('test2.txt','r ...

  8. 使用python实现两个文件夹里文件的对比(包含内容的对比)

    #-*-coding:utf-8-*- #=============================================================================== ...

  9. Python获取两个文件的交集、并集、差集

    题记:朋友在处理数据时,需要解决这方面的问题,所以利用她给的代码,自己重新梳理了下,并成功运行. 代码如下: # coding:utf-8 s1 = set(open(r'C:\\Users\\yan ...

随机推荐

  1. Cracking The Coding Interview 3.5

    //Implement a MyQueue class which implements a queue using two stacks. #include <iostream> #in ...

  2. 深入理解java虚拟机---垃圾回收(十一)

    1.垃圾回收要解决的问题 可以通过配置虚拟机参数来打印出内存日志: -verbose:gc -XX:+PrintGCDetails 垃圾收集(Garbage Collection,GC),要设计一个G ...

  3. Comparable和Comparator接口是干什么的?列出它们的区别。

    Comparable和Comparator接口是干什么的?列出它们的区别. Java提供了只包含一个compareTo()方法的Comparable接口.这个方法可以个给两个对象排序.具体来说,它返回 ...

  4. SQL-24 获取所有非manager员工当前的薪水情况,给出dept_no、emp_no以及salary ,当前表示to_date='9999-01-01'

    题目描述 获取所有非manager员工当前的薪水情况,给出dept_no.emp_no以及salary ,当前表示to_date='9999-01-01'CREATE TABLE `dept_emp` ...

  5. 关于iOS开发常用的一些东西

    备注:这里只是个人的观点,有的地方也是copy,多多指教,个人笔记,有侵犯你们版权的地方还望海涵!!! 1. 自定义键盘:inputView重写,可以用重写UITextField来实现 2. UIDa ...

  6. Android开发---网格布局案例

     Android开发---网格布局案例 效果图: 1.MainActivity.java package com.example.android_activity; import android.ap ...

  7. 3-D crustal model transfer to cdl format

    The downloaded crustal model file, for example, its name is TW-PS-H14.nc The command is ncdump -b c ...

  8. 实力封装:Unity打包AssetBundle(二)

    →前情提要:Unity最基本的AssetBundle打包方式. 第二种打包方式 Unity提供的BuildAssetBundles API还有一个重载形式,看下面↓↓ public static As ...

  9. oracle 12c 警告日志位置

    Oracle 12c环境下查询,alert日志并不在bdump目录下,看到网上和书上都写着可以通过初始化参数background_dump_dest来查看alter日志路径,还说警告日志文件的缺省位置 ...

  10. Golang AES加密

    package main import ( "crypto/aes" "crypto/cipher" "fmt" "os" ...