Python比较两个文件是否一致

普通版

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import json
import sys
# file1 = sys.argv[0]
# file2 = sys.argv[1]----在linux中执行传参
#打开文件
file_object_1 = open("1.txt")
file_object_2 = open("2.txt")
# file_object_1 = open("file1","rb")
# file_object_2 = open("file2","rb")

file_item_1 = {}#文件1数据
item_1 = []
key_1 = []#row key值
value_1 = []# 数据中value值


file_item_2 = {}#文件2数据
item_2 = []
key_2 = []#row key值
value_2 = []# 数据中value值


#读取文件
try:
    for line in file_object_1:
        item_1 = line.strip()[2:][:-2].split("'")#按照'切分,过滤时间戳、key值、value值
        key_1.append(item_1[7])#获取row_key值
        value_1.append(item_1[3])#获取value
        file_item_1 = dict(zip(key_1,value_1))#生成key:value数据
#
#
for line in file_object_2:
    item_2 = line.strip()[2:][:-2].split("'")#按照'切分,过滤时间戳、key值、value值
    key_2.append(item_2[7])#获取row_key值
    value_2.append(item_2[3])#获取value
    file_item_2 = dict(zip(key_2,value_2))#生成key:value数据
finally:
     file_object_1.close()#关闭文件
     file_object_2.close()

for i in range(len(file_item_1)):


for j in range(len(file_item_2)):
    if(0==cmp(file_item_1.keys()[i],file_item_2.keys()[j])):
        if(0==cmp(file_item_1[file_item_1.keys()[i]],file_item_2[file_item_2.keys()[j]])):
            continue
        else:
            print "key值为"+str(file_item_1.keys()[i])+"的数据不一致"

在这里插入图片描述

增强版

import difflib

a = open('./1.txt', 'U').readlines()
b = open('./2.txt', 'U').readlines()
diff = difflib.ndiff(a, b)
for i in diff:
	print(i)

+ -号标注的行为不同行,?为不同的地方

在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值