# -*- coding: utf-8 -*-
"""
对比两个excel的区别并输出
"""
import openpyxl
#将excel的内容分别读入到data中
data1 = openpyxl.load_workbook('d:/data1.xlsx')
data2 = openpyxl.load_workbook('d:/data2.xlsx')
#通过唯一值key(A列)区分两个别表中的不同
def getKey(data):
# 获取当前活跃的Worksheet
sheet = data.get_active_sheet()
key = []
for cellobj in sheet['A']:
key.append(cellobj.value)
return key
key1 = getKey(data1)
key2 = getKey(data2)
#将列表转换成集合
sdata1 = set(key1)
sdata2 = set(key2)
#找出两个列表的不同行,转换成列表,打印
difference = list(sdata1 ^ sdata2)
for i in difference:
print(i)
#将不同行高亮显示
print ("----" *10 + "第一张表" + "----" *10)
a = data1.get_active_sheet()['A']
for cellobj in a:
if cellobj.value in difference:
print (cellobj.value)
cellobj.font = Font(color=colors.BLACK, italic=True ,bo