python实现比较文件内容异同

作者:Sino_Crazy_Snail 时间:2022-11-10 19:25:27 

本文实例为大家分享了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()

来源:https://blog.csdn.net/Sino_Crazy_Snail/article/details/78185667

标签:python,文件异同
0
投稿

猜你喜欢

  • Django框架配置mysql数据库实现过程

    2024-01-20 00:35:23
  • Python EOL while scanning string literal问题解决方法

    2021-01-20 23:58:38
  • Linux 7下脚本安装配置oracle 11g r2教程

    2024-01-13 13:35:56
  • python绘制柱形图的方法

    2022-03-07 07:36:06
  • 简述Python中的面向对象编程的概念

    2021-11-08 07:53:11
  • python中sort和sorted排序的实例方法

    2022-12-22 09:10:12
  • go语言区块链学习调用智能合约

    2024-04-30 10:01:34
  • php 多继承的几种常见实现方法示例

    2023-11-22 19:03:19
  • 浅述python2与python3的简单区别

    2022-03-06 21:19:47
  •  python中字符串的常见操作总结(二)

    2023-04-08 17:17:35
  • 使用keras做SQL注入攻击的判断(实例讲解)

    2024-01-25 12:40:36
  • 使用Python opencv实现视频与图片的相互转换

    2022-03-04 15:20:31
  • Python获取网络图片和视频的示例代码

    2023-06-24 08:37:58
  • pythotn条件分支与循环详解

    2021-12-02 12:20:08
  • python绘制神器五角星+小黄人+樱花

    2022-02-11 03:45:27
  • Java 数据库连接池Druid 的介绍

    2024-01-14 10:47:42
  • javascript开发经验谈

    2009-05-01 12:14:00
  • 详解php中implode explode serialize json msgpack性能对比

    2023-09-03 18:00:19
  • 详解如何通过Python实现批量数据提取

    2021-12-23 01:19:10
  • python解决OpenCV在读取显示图片的时候闪退的问题

    2022-04-16 16:29:48
  • asp之家 网络编程 m.aspxhome.com