今天老大交给我一个任务,对比两个版本的excel数据的异同(增删情况),唉,说多了都是泪,自从学会了python,再也不用担心老大这样的任务了~~~

好了直接上代码吧,代码中解释

import xlrd

import xlwt

#from xlutils.copy import copy #暂时用不上

import os

l_p=[]#定义两个全局list,分别存储原始和目的需要对比的数据

l_t=[]

def read_excel():

wb_pri = xlrd.open_workbook('verp.xlsx')#打开原始文件

wb_tar = xlrd.open_workbook('vert.xlsx')#打开目标文件

wb_result = xlwt.Workbook()#新建一个文件,用来保存结果

sheet_result = wb_result.add_sheet('result',cell_overwrite_ok=True)

result_i =0

result_j =0

for sheet_i in range(2,21):

sheet_pri = wb_pri.sheet_by_index(sheet_i) #通过index获取每个sheet,为了省心,我根据自己的需要限定为第2-21个sheet

sheet_tar = wb_tar.sheet_by_index(sheet_i)

sheet_backup = wb_backup.get_sheet(sheet_i)

print(sheet_pri.name,sheet_tar.name)

#为什么是取这一列,因为这就是需要对比的数据阿

l_p = sheet_pri.col_values(2)

l_t = sheet_tar.col_values(2)

#tmp =[var for val in a if val in b] #这个是求交集,老大没要求是用不上的

#求参数在pri(原始数据)中存在,而在tar(目标)中不存在的

tmp_pd = list(set(l_p).difference(set(l_t)))

#求参数在tar中存在,而在pri中不存在的

tmp_td = list(set(l_t).difference(set(l_p)))

if result_i

result_i =result_j

else:

result_j =result_i

for pd_i in tmp_pd:

result_i = result_i+1

sheet_result.write(result_i,0,sheet_pri.name)

sheet_result.write(result_i,2,pd_i)

for td_i in tmp_td:

result_j =result_j +1

sheet_result.write(result_j,1,sheet_tar.name)

sheet_result.write(result_j,3,td_i)

#好了,可以去名为result的excel中查看结果了

wb_result.save('result.xls')

if __name__ == '__main__':

read_excel()

python对比excel重复数据_python入门之对比两份excel表格数据相关推荐

  1. python比较excel中两列数据_python入门之对比两份excel表格数据

    今天老大交给我一个任务,对比两个版本的excel数据的异同(增删情况),唉,说多了都是泪,自从学会了python,再也不用担心老大这样的任务了~~~ 好了直接上代码吧,代码中解释 import xlr ...

  2. 计算机中的成绩排名相同怎么弄,Excel:重复名次也可以查姓名成绩EXCEL基本教程 -电脑资料...

    当老师的,对分析学生成绩大概有瘾, 图1 原始成绩表 原始的成绩表如图1所示.姓名位于C2:C92单元格,语文成绩位于D2:D92单元格区域.我们就以查找语文学科的前10名成绩及学生姓名为例.为方便比 ...

  3. python统计excel中重复数据_Python中用pandas对标Excel自带功能——去除重复项

    经常听别人说 Python 在数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死.后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器-- pandas 前言 有时候数据中出 ...

  4. python在长字符串中寻找重复子串_Python 入门到精通

    1.变量 1.python不用事先声明变量,赋值过程中就包含了变量声明和定义的过程 2.用"="赋值,左边是变量名,右边是变量的值 1.1. 数字 整数 int_var = 1 长 ...

  5. python编程教程第九讲_Python入门学习视频,最全面讲解视频无偿分享,这些基础知识你都懂了吗?...

    2020最新Python零基础到精通资料教材,干货分享,新基础Python教材,看这里,这里有你想要的所有资源哦,最强笔记,教你怎么入门提升!让你对自己更加有信心,重点是资料都是免费的,免费!!! 如 ...

  6. python列表添加重复值_python 列表 重复添加数据库

    <Python 3程序开发指南(第2版•修订版)>--1.4 总结 本节书摘来自异步社区<Python 3程序开发指南(第2版•修订版)>一书中的第1章,第1.4节,作者[英] ...

  7. python 画在同一坐标轴_Python学习第95课-多个数据在同一个坐标轴画图叠加

    [每天几分钟,从零入门python编程的世界!] 我们已经学过了绘制折线图.柱状图.直方图.散点图.饼状图和堆栈图. 这节课我们学习如何把多个数据画图叠加,这种图形可以用作多组数据的对比. 下面我们通 ...

  8. python 拆分excel工作表_Python几行代码轻松拆分表格

    Python几行代码轻松拆分表格 作者:梅朵 微信公众号:实用办公编程技能 微信号:Excel-Python 什么?,Python几行代码竟然可以按指定轻松拆分表格? 将test.xls中的数据按地区 ...

  9. python选手的最后得分_python戏说NBA--NBA近二十年得分王各项数据之最

    python戏说NBApython戏说NBA,是一个用python来戏说NBA大事的系列栏目,这里将结合python开发技术,融合现今发生的NBA大事,做一些有趣的实验,让我们一起看热闹的同时,也能学 ...

  10. python教程自带数据库_Python入门进阶教程-数据库操作

    Python数据库操作Python版本3.8.0,开发工具:Pycharm 建议本节在掌握了数据库相关操作后再进行学习 MySQL 是最流行的关系型数据库管理系统.本小节通过Python对MySQL数 ...

最新文章

  1. python @修饰符_Python基础(面向对象之类成员与修饰符)
  2. [转载]acm进阶之路
  3. 后端:请谨慎使用Arrays.asList、ArrayList的subList
  4. c语言 bool_程序的数据要放到哪里呢?|C语言第二篇
  5. IPC--进程间通信三(共享内存)
  6. Spring IoC容器初始化过程分析
  7. c语言投票程序设计,《C语言及程序设计》实践参考——投票表决器
  8. 站酷暂停更新怎么办?这18个免费设计资源网站值得收藏!
  9. Excel 数据透视表教程大全之 03 刷新数据、添加多个字段作为值字段、值显示为总数的百分
  10. 计算机驱动空间的c盘不足怎么办,c盘空间不足
  11. Tier1 OEM ODM 区别
  12. Fluent——UDF监测指定点的物理量
  13. Cisco ASA 9.16(Adaptive Security Appliance (ASA) Software)
  14. 坐标旋转变换 公式图解
  15. 【Python Web】Flask框架(一)快速开发网站
  16. php+laravel+百度智能云人脸识别详解
  17. PCB设计中屏蔽罩夹子的使用
  18. WinAirCrackPack使用教程
  19. 机器学习做自动聊天机器人_您不应该使用聊天机器人的3个原因
  20. 最牛js身份证号校验方法

热门文章

  1. mysql数据库的设计工具_MySQL Workbench,专为MySQL设计的数据库建模工具
  2. python出入库_基于Python对Excel数据入库的处理
  3. 【记录】qt.qpa.screen: Could not connect to any X display 解决方案
  4. 黑马旅游网---day1
  5. 问卷调查系统 简易版
  6. 外卖cps美团饿了么小程序 每天领取外卖优惠券 下单直接抵扣现金(外卖cps返利分销小程序源码)
  7. Word批量转PDF 无水印
  8. wso2 esb 配置mysql_wso2esb安装及helloworld
  9. python3数据科学入门与实战技巧_Python3数据科学入门与实战
  10. Gif图片分解(支持批量)