python对比两个文件问题

写一个比较两个文本文件的程序. 如果不同, 给出第一个不同处的行号和 列号.

比较的时候可以使用zip()函数

 1 a=open(‘test.txt‘,‘r‘)
 2 b=open(‘test2.txt‘,‘r‘)
 3 row=0
 4 for linea,lineb in zip(a,b):
 5     row+=1
 6     if not linea==lineb:
 7         col=0
 8         for chara,charb in zip(linea,lineb):
 9             col+=1
10             if not chara==charb:
11                 print ("difference in row :%d col:%d"%(row,col))
12                 break

这里面需要注意的是两个方面。

第一个是zip()函数的使用

第二个是条件变量的使用,类似上图使用条件变量比较舒服。

时间: 2024-11-08 20:04:01

python对比两个文件问题的相关文章

快速遍历对比两个文件下的md5值

[[email protected] Activity]# find /opt/xyrpg/rpgserver_s1/XMLData/Activity/ -type f -exec md5sum {} \;|sed 's/rpgserver_s1/rpgserver_s2/'|md5sum -c /opt/xyrpg/rpgserver_s2/XMLData/Activity/ActivityCondition.xml: FAILED /opt/xyrpg/rpgserver_s2/XMLDat

linux对比两个文件的差异

在项目维护阶段,经常会对垃圾文件进行清理.比如没有在数据库中的文件进行删除,这个时候最好的选择就是使用shell命令了:废话不多说直接上代码: 1.首先准备好从数据表导出来的数据,方法随意 2.在服务器查看指定目录下所有文件的文件名,并生成文件. ls *.* >***.txt 3.对比两个文件的文件内容不同的部分,并且删除 #!/bin/sh #BEGIN cat test1.txt | sort | uniq | sort > a_u.txt cat test2.txt | sort |

Python对比两个txt文件内容

difflib模块作为python的标准库模块,无需安装,作用是比对文本之间的差异,且支持输出可读性比较强的html格式. #!coding=utf-8 # 2018-9-19 import sys import difflib # 读取配置文件函数 def read_file(file_name): try: file_handle = open(file_name, 'r') text = file_handle.read().splitlines() # 读取后以行进行分割 file_ha

python比较两个文件的差异

使用python脚本比较两个文件的差异内容并输出到html文档中,可以通过浏览器打开查看. 一.脚本使用 对比nginx配置文件的差异 python python_diff_file.py -f1 web26.conf -f2 web103.conf 二.脚本内容 #!/usr/bin/python # -*- coding: utf-8 -*- """ 1.difflib的HtmlDiff类创建html表格用来展示文件差异,通过make_file方法 2.make_file

用python比较两个文件中内容的不同之处, 并输出行号和内容.

代码部分: '''cmpfile.py - 比对两个文件, 如果有不同之处, 打印内容和行号''' import os class cmpFile: def __init__(self, file1, file2): self.file1 = file1 self.file2 = file2 def fileExists(self): if os.path.exists(self.file1) and os.path.exists(self.file2): return True else: r

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

#-*-coding:utf-8-*- #=============================================================================== # 目录对比工具(包含子目录 ),并列出# 1.A比B多了哪些文件 # 2.B比A多了哪些文件 # 3.二者相同的文件:文件大小相同 VS 文件大小不同 (Size相同文件不打印:与Size不同文件显示未排序)#===========================================

对比两个文件相似度 余弦算法

文件A1 包含字符Bi 的个数BiN1,文件A2 包含的字符Bi 的个数BiN2 利用余弦算法:   相似度 = (B1N1*B1N2 +B2N1*B2N2+....+BiN1*BiN2)/(Math.sqrt(B1N1^2 +B2N1^2+....+BiN1^2)*Math.sqrt(B1N2^2 +B2N2^2+....+BiN2^2). Math.sqrt() 代表开方. 具体代码如下: public class SimilarDegreeByCos { /* * 计算两个字符串(英文字符

利用python合并两个文件

1格式如下 在做利用zabbix的api来批量添加主机的时候,需要处理ip和hostname,在借用别人写的py程序的基础上,自己有改装了以下脚本,为自己使用.需要时ip和hostname为一个统一格式. $ cat ip.txt 1.1.1.1 2.2.2.2 3.3.3.3 4.4.4.4 $ cat hostname.txt tx-1 tx-2 tx-3 tx-4 最后需要合并为如下格式 1 tx-1,1.1.1.1 2 tx-2,2.2.2.2 3 tx-3,3.3.3.3 4 tx-4

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

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