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操作列表的常用方法分享
Feb 13 Python
python登陆asp网站页面的实现代码
Jan 14 Python
Scrapy的简单使用教程
Oct 24 Python
简单了解Django模板的使用
Dec 20 Python
解决pandas 作图无法显示中文的问题
May 24 Python
PyTorch学习笔记之回归实战
May 28 Python
python求解数组中两个字符串的最小距离
Sep 27 Python
python gdal安装与简单使用
Aug 01 Python
Python的形参和实参使用方式
Dec 24 Python
keras模型可视化,层可视化及kernel可视化实例
Jan 24 Python
Python 3.10 的首个 PEP 诞生,内置类型 zip() 迎来新特性(推荐)
Jul 03 Python
解决python便携版无法直接运行py文件的问题
Sep 01 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开发框架总结收藏
2008/04/24 PHP
filemanage功能中用到的lib.js
2007/04/08 Javascript
Prototype 学习 工具函数学习($w,$F方法)
2009/07/12 Javascript
AlertBox 弹出层信息提示框效果实现步骤
2010/10/11 Javascript
jquery对表单操作2
2011/04/06 Javascript
js校验表单后提交表单的三种方法总结
2014/02/28 Javascript
jQuery跨域问题解决方案
2015/08/03 Javascript
javascript实现在下拉列表中显示多级树形菜单的方法
2015/08/12 Javascript
Bootstrap风格的zTree右键菜单
2017/02/17 Javascript
express+mockjs实现模拟后台数据发送功能
2018/01/07 Javascript
javascript实现遮罩层动态效果实例
2019/05/14 Javascript
新手入门带你学习JavaScript引擎运行原理
2019/06/24 Javascript
你知道JavaScript Symbol类型怎么用吗
2020/01/08 Javascript
JavaScript代码异常监控实现过程详解
2020/02/17 Javascript
JavaScript indexOf()原理及使用方法详解
2020/07/09 Javascript
浅谈JavaScript中等号、双等号、 三等号的区别
2020/08/06 Javascript
Vue双向数据绑定(MVVM)的原理
2020/10/03 Javascript
[00:52]DOTA2齐天大圣预告片
2016/08/13 DOTA
详解Python中DOM方法的动态性
2015/04/11 Python
Python操作MongoDB数据库PyMongo库使用方法
2015/04/27 Python
Python使用win32com实现的模拟浏览器功能示例
2017/07/13 Python
Pycharm技巧之代码跳转该如何回退
2017/07/16 Python
Pandas中把dataframe转成array的方法
2018/04/13 Python
python读取各种文件数据方法解析
2018/12/29 Python
用Python实现最速下降法求极值的方法
2019/07/10 Python
Python基于xlrd模块处理合并单元格
2020/07/28 Python
python3实现语音转文字(语音识别)和文字转语音(语音合成)
2020/10/14 Python
Alpine安装Python3依赖出现的问题及解决方法
2020/12/25 Python
大学毕业生最详细的自我评价分享
2013/11/18 职场文书
优秀员工获奖感言
2014/03/01 职场文书
前处理组长岗位职责
2014/03/01 职场文书
党员自我剖析材料(群众路线)
2014/10/06 职场文书
2015新年联欢晚会开场白
2014/12/14 职场文书
先进集体事迹材料范文
2014/12/25 职场文书
领导干部学习十八届五中全会精神心得体会
2016/01/05 职场文书
导游词幽默开场白
2019/06/26 职场文书