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实现约瑟夫环问题的方法
May 03 Python
Python 操作MySQL详解及实例
Apr 30 Python
Python只用40行代码编写的计算器实例
May 10 Python
浅谈Pandas中map, applymap and apply的区别
Apr 10 Python
Python将8位的图片转为24位的图片实现方法
Oct 24 Python
对Python中plt的画图函数详解
Nov 07 Python
pycharm配置pyqt5-tools开发环境的方法步骤
Feb 11 Python
PyQt打开保存对话框的方法和使用详解
Feb 27 Python
Python3 使用selenium插件爬取苏宁商家联系电话
Dec 23 Python
Python3和PyCharm安装与环境配置【图文教程】
Feb 14 Python
Python3打包exe代码2种方法实例解析
Feb 17 Python
在Python中使用K-Means聚类和PCA主成分分析进行图像压缩
Apr 10 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 随机记录mysql rand()造成CPU 100%的解决办法
2010/05/18 PHP
php通过Chianz.com获取IP地址与地区的方法
2015/01/14 PHP
php版阿里云OSS图片上传类详解
2016/12/01 PHP
php intval函数用法总结
2019/04/14 PHP
php常用的工具开发整理
2019/09/26 PHP
javascript英文日期(有时间)选择器
2007/05/02 Javascript
Javascript-Mozilla和IE中的一个函数直接量的问题分析
2007/08/12 Javascript
一个很简单的jquery+xml+ajax的无刷新树结构(无css,后台是c#)
2010/06/02 Javascript
基于jquery实现的类似百度搜索的输入框自动完成功能
2011/08/23 Javascript
jQuery动态添加 input type=file的实现代码
2012/06/14 Javascript
js原生appendChild的bug解决心得分享
2013/07/01 Javascript
JS复制内容到剪切板的实例代码(兼容IE与火狐)
2013/11/19 Javascript
JavaScript实现将UPC转换成ISBN的方法
2015/05/26 Javascript
基于JavaScript实现跳转提示页面
2016/09/24 Javascript
Vue 框架之动态绑定 css 样式实例分析
2018/11/14 Javascript
vue中eslintrc.js配置最详细介绍
2018/12/21 Javascript
[06:16]《DAC最前线》之地区预选赛全面回顾
2015/01/19 DOTA
[49:17]DOTA2-DPC中国联赛 正赛 Phoenix vs Dynasty BO3 第三场 1月26日
2021/03/11 DOTA
[01:38:19]夜魇凡尔赛茶话会 第五期
2021/03/11 DOTA
Python升级导致yum、pip报错的解决方法
2017/09/06 Python
在Python中调用Ping命令,批量IP的方法
2019/01/26 Python
对tensorflow中tf.nn.conv1d和layers.conv1d的区别详解
2020/02/11 Python
在django中form的label和verbose name的区别说明
2020/05/20 Python
面向新手解析python Beautiful Soup基本用法
2020/07/11 Python
爱他美官方海外旗舰店:Aptamil奶粉
2017/12/22 全球购物
英国领先的高级美容和在线皮肤诊所:Face the Future
2020/06/17 全球购物
留学自荐信的技巧
2013/10/17 职场文书
护士毕业生自我鉴定
2014/02/08 职场文书
大堂副理的岗位职责范文
2014/02/17 职场文书
会计工作决心书
2014/03/11 职场文书
品牌推广策划方案
2014/05/28 职场文书
2014年大班保育员工作总结
2014/12/02 职场文书
员工自我工作评价
2015/03/06 职场文书
李强为自己工作观后感
2015/06/11 职场文书
CSS3实现指纹特效代码
2022/03/17 HTML / CSS
Android Gradle 插件自定义Plugin实现注意事项
2022/06/16 Java/Android