python实现比较文件内容异同


Posted in Python onJune 22, 2018

本文实例为大家分享了python实现比较文件内容异同的具体代码,供大家参考,具体内容如下

import sys
import difflib
import time
import os
"""
创作时间:2017-10-08 23:30 09
版本: 1.0.0
"""
def main():
  """主函数"""
  try:
    f1 = sys.argv[1]#获取文件名
    f2 = sys.argv[2]
  except Exception as e:
    print("Error: "+ str(e))
    print("Usage : python compareFile.py filename1 filename2")
    sys.exit()

  if f1 == "" or f2 == "":#参数不够
    print("Usage : python compareFile.py filename1 filename2")
    sys.exit()

  tf1 = readFile(f1)
  tf2 = readFile(f2)

  d = difflib.HtmlDiff()#创建一个实例difflib.HtmlDiff
  writeFile(d.make_file(tf1,tf2))#生成一个比较后的报告文件,格式为html

def readFile(filename):
  """读取文件,并处理"""
  try:
    fileHandle = open(filename, "r")
    text = fileHandle.read().splitlines()
    fileHandle.close()
    return text
  except IOError as e:
    print("Read file error: "+ str(e))
    sys.exit()

def writeFile(file):
  """写入文件"""
  diffFile = open('diff_{}_.html'.format(time.strftime("%Y_%m_%d_%H_%M_%S",time.localtime())), "w")
  diffFile.write("<meta charset='UTF-8'>")
  diffFile.write(file)
  print("The file on {}".format(os.path.abspath(str(diffFile.name))))#提示文件生成在什么地方
  diffFile.close()


if __name__ == "__main__":
  main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现提取谷歌音乐搜索结果的方法
Jul 10 Python
python黑魔法之编码转换
Jan 25 Python
python简单商城购物车实例代码
Mar 15 Python
python实现批量修改图片格式和尺寸
Jun 07 Python
python主线程捕获子线程的方法
Jun 17 Python
python树莓派红外反射传感器
Jan 21 Python
python计算阶乘和的方法(1!+2!+3!+...+n!)
Feb 01 Python
Django ORM 查询管理器源码解析
Aug 05 Python
Python使用python-docx读写word文档
Aug 26 Python
Python使用selenium + headless chrome获取网页内容的方法示例
Oct 16 Python
python实现坦克大战
Apr 24 Python
Python用any()函数检查字符串中的字母以及如何使用all()函数
Apr 14 Python
python实现输入数字的连续加减方法
Jun 22 #Python
Python之用户输入的实例
Jun 22 #Python
Python交互环境下实现输入代码
Jun 22 #Python
python实现搜索文本文件内容脚本
Jun 22 #Python
python实现textrank关键词提取
Jun 22 #Python
python实现自主查询实时天气
Jun 22 #Python
python实现定时提取实时日志程序
Jun 22 #Python
You might like
php根据身份证号码计算年龄的实例代码
2014/01/18 PHP
YII模块实现绑定二级域名的方法
2014/07/09 PHP
PHP通过加锁实现并发情况下抢码功能
2016/08/10 PHP
Laravel jwt 多表(多用户端)验证隔离的实现
2019/12/18 PHP
限制文本字节数js代码
2007/03/06 Javascript
javascript Math.random()随机数函数
2009/11/04 Javascript
深入理解JavaScript系列(15) 函数(Functions)
2012/04/12 Javascript
JavaScript基本语法学习教程
2016/01/14 Javascript
关于List.ToArray()方法的效率测试
2016/09/30 Javascript
jQuery插件FusionCharts实现的3D柱状图效果实例【附demo源码下载】
2017/03/03 Javascript
基于zepto.js实现手机相册功能
2017/07/11 Javascript
使用OPENLAYERS3实现点选的方法
2020/09/24 Javascript
react-router4 嵌套路由的使用方法
2017/07/24 Javascript
Angularjs中ng-repeat的简单实例
2017/08/25 Javascript
Vue2 模板template的四种写法总结
2018/02/23 Javascript
vue页面切换过渡transition效果
2018/10/08 Javascript
JS选取DOM元素常见操作方法实例分析
2018/12/10 Javascript
微信小程序webSocket的使用方法
2020/02/20 Javascript
详解在IDEA中将Echarts引入web两种方式(使用js文件和maven的依赖导入)
2020/07/11 Javascript
解决vue中的无限循环问题
2020/07/27 Javascript
vue data有值,但是页面{{}} 取不到值的解决
2020/11/09 Javascript
Python3 queue队列模块详细介绍
2018/01/05 Python
Python使用numpy实现BP神经网络
2018/03/10 Python
Django模板Templates使用方法详解
2019/07/19 Python
Flask框架钩子函数功能与用法分析
2019/08/02 Python
numpy数组做图片拼接的实现(concatenate、vstack、hstack)
2019/11/08 Python
解决django-xadmin列表页filter关联对象搜索问题
2019/11/15 Python
python处理写入数据代码讲解
2020/10/22 Python
python用分数表示矩阵的方法实例
2021/01/11 Python
用HTML5实现网站在windows8中贴靠的方法
2013/04/21 HTML / CSS
德购商城:德国进口直邮商城
2017/06/13 全球购物
美国时尚配饰品牌:Dooney & Bourke
2017/11/14 全球购物
信息管理专业学生自荐信格式
2013/09/22 职场文书
2014年财务个人工作总结
2014/12/08 职场文书
锦旗赠语
2015/06/23 职场文书
公司老总年会致辞
2015/07/30 职场文书