import openpyxl as vb
import csv
import pandas as pd
#读取 需要对比的excel表
#代表表1
workbook_a = vb.load_workbook(r"D://a//表1.xlsx")
#代表表2
workbook_b = vb.load_workbook(r"D://a//表2.xlsx")
#读取需要对比的sheet名
sheet_a = workbook_a['Sheet1']
sheet_b = workbook_b['Sheet1']
#遍历所有的行与列
maxrow_a = sheet_a.max_row
maxcolumn_a = sheet_a.max_column
maxrow_b = sheet_b.max_row
maxcolumn_b = sheet_b.max_column
data_a = {}
data_b = {}
for i in range(1,int(maxrow_a)+1):
cell_a_1 = sheet_a.cell(i,1)
cell_a_2 = sheet_a.cell(i,2)
c_a_1 = str(cell_a_1.value)
c_a_2 = str(cell_a_2.value)
data_a[c_a_1] = c_a_2
#data_a.append(cell_a.value)
for j in range(1,int(maxrow_b)+1):
cell_b_1 = sheet_b.cell(j,1)
cell_b_2 = sheet_b.cell(j,2)
c_b_1 = str(cell_b_1.value)
c_b_2 = str(cell_b_2.value)
data_b[c_b_1] = c_b_2
'''
description: 表1中没有表2的这些数据
return {*}
Date: 2023-04-23 16:56:14
'''
data_aaa = []
for keys,value in data_a.items():
if keys not in data_b.keys():
print(keys,value)
data_aaaa = []
data_aaaa = [keys,value]
data_aaa.append(data_aaaa)
columns11= ["code","name"]
test_aaa=pd.DataFrame(columns=columns11,data=data_aaa)#数据有三列,列名分别为one,two,three
test_aaa.to_csv('D:/a/表1有表2没有的这些数据.csv',encoding='utf8')
'''
description: 表2没有表1这些数据
return {*}
Date: 2023-04-23 17:00:36
'''
data_bbb = []
for keys,value in data_b.items():
if keys not in data_a.keys():
print(keys,value)
data_bbbb = []
data_bbbb = [keys,value]
data_bbb.append(data_bbbb)
test_bbb=pd.DataFrame(columns=columns11,data=data_bbb)#数据有三列,列名分别为one,two,three
test_bbb.to_csv('D:/a/表2有表1没有这些数据.csv',encoding='utf8')
版权属于:
Landscape
文章声明:
本文版权内容属于《FreeBlog》转载请标明出处
评论一下?