Python将多个excel表格合并为一个表格


Posted in Python onFebruary 22, 2021

生活中经常会碰到多个excel表格汇总成一个表格的情况,比如你发放了一份表格让班级所有同学填写,而你负责将大家的结果合并成一个。诸如此类的问题有很多。除了人工将所有表格的内容一个一个复制到汇总表格里,那么如何用Python自动实现这些工作呢~

我不知道有没有其他更方便的合并方法,先用Python实现这个功能,自己用就很方便了。

比如,在文件夹下有如下7个表格(想象一下有100个或更多的表格需要合并)

Python将多个excel表格合并为一个表格

作为样例,每个表格的内容均为

Python将多个excel表格合并为一个表格

运行程序,将7个表格合并成了test.xls

Python将多个excel表格合并为一个表格

打开test.xls,发现成功合并了多个表格的数据到一个表格里

Python将多个excel表格合并为一个表格

代码运行之前,需要安装Numpy,xlrd,xlwt三个扩展包。话不多说,代码如下

#下面这些变量需要您根据自己的具体情况选择 
biaotou=['学号','学生姓名','第一志愿','第二志愿','第三志愿','第四志愿','第五志愿','联系电话','性别','备注'] 
#在哪里搜索多个表格 
filelocation="C:\\Users\\ann\Documents\\Python Scripts\\" 
#当前文件夹下搜索的文件名后缀 
fileform="xls" 
#将合并后的表格存放到的位置 
filedestination="C:\\Users\\ann\Documents\\Python Scripts\\" 
#合并后的表格命名为file 
file="test" 
 
#首先查找默认文件夹下有多少文档需要整合 
import glob 
from numpy import * 
filearray=[] 
for filename in glob.glob(filelocation+"*."+fileform): 
 filearray.append(filename) 
#以上是从pythonscripts文件夹下读取所有excel表格,并将所有的名字存储到列表filearray 
print("在默认文件夹下有%d个文档哦"%len(filearray)) 
ge=len(filearray) 
matrix = [None]*ge 
#实现读写数据 
 
#下面是将所有文件读数据到三维列表cell[][][]中(不包含表头) 
import xlrd 
for i in range(ge): 
 fname=filearray[i] 
 bk=xlrd.open_workbook(fname) 
 try: 
 sh=bk.sheet_by_name("Sheet1") 
 except: 
 print ("在文件%s中没有找到sheet1,读取文件数据失败,要不你换换表格的名字?" %fname) 
 nrows=sh.nrows 
 matrix[i] = [0]*(nrows-1) 
 
 ncols=sh.ncols 
 for m in range(nrows-1): 
 matrix[i][m] = ["0"]*ncols 
 
 for j in range(1,nrows): 
 for k in range(0,ncols): 
  matrix[i][j-1][k]=sh.cell(j,k).value 
#下面是写数据到新的表格test.xls中哦 
import xlwt 
filename=xlwt.Workbook() 
sheet=filename.add_sheet("hel") 
#下面是把表头写上 
for i in range(0,len(biaotou)): 
 sheet.write(0,i,biaotou[i]) 
#求和前面的文件一共写了多少行 
zh=1 
for i in range(ge): 
 for j in range(len(matrix[i])): 
 for k in range(len(matrix[i][j])): 
  sheet.write(zh,k,matrix[i][j][k]) 
 zh=zh+1 
print("我已经将%d个文件合并成1个文件,并命名为%s.xls.快打开看看正确不?"%(ge,file)) 
filename.save(filedestination+file+".xls")

我的运行环境是windows7 ,64位。Python版本是3.5.1,32位。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
深入解析Python中的urllib2模块
Nov 13 Python
Anaconda入门使用总结
Apr 05 Python
python3处理含有中文的url方法
May 10 Python
使用selenium模拟登录解决滑块验证问题的实现
May 10 Python
我就是这样学习Python中的列表
Jun 02 Python
Python Django Vue 项目创建过程详解
Jul 29 Python
python实现抠图给证件照换背景源码
Aug 20 Python
Python ATM功能实现代码实例
Mar 19 Python
Python requests模块安装及使用教程图解
Jun 30 Python
python读取excel进行遍历/xlrd模块操作
Jul 12 Python
Win10下配置tensorflow-gpu的详细教程(无VS2015/2017)
Jul 14 Python
Python第三方库安装缓慢的解决方法
Feb 06 Python
使用Python+Splinter自动刷新抢12306火车票
Jan 03 #Python
Python实现简易Web爬虫详解
Jan 03 #Python
Python读取MRI并显示为灰度图像实例代码
Jan 03 #Python
使用 Python 实现微信公众号粉丝迁移流程
Jan 03 #Python
EM算法的python实现的方法步骤
Jan 02 #Python
Python+树莓派+YOLO打造一款人工智能照相机
Jan 02 #Python
matplotlib绘制动画代码示例
Jan 02 #Python
You might like
比较strtr, str_replace和preg_replace三个函数的效率
2013/06/26 PHP
HTML中嵌入PHP的简单方法
2016/02/16 PHP
php简单实现单态设计模式的方法分析
2017/07/28 PHP
niceTitle 基于jquery的超链接提示插件
2010/05/31 Javascript
jquery 3D球状导航的文章分类
2010/07/06 Javascript
JQuery入门——用bind方法绑定事件处理函数应用介绍
2013/02/05 Javascript
jquery 实现窗口的最大化不论什么情况
2013/09/03 Javascript
JavaScript输入邮箱自动提示实例代码
2014/01/13 Javascript
利用Keydown事件阻止用户输入实现代码
2014/03/11 Javascript
new Date()问题在ie8下面的处理方法
2014/07/31 Javascript
Javascript中Array.prototype.map()详解
2014/10/22 Javascript
javascript实现行拖动的方法
2015/05/27 Javascript
基于js对象,操作属性、方法详解
2016/08/11 Javascript
浅析jsopn跨域请求原理及cors(跨域资源共享)的完美解决方法
2017/02/06 Javascript
微信小程序 POST请求的实例详解
2017/09/29 Javascript
在vue项目中引入highcharts图表的方法(详解)
2018/03/05 Javascript
Vue使用axios出现options请求方法
2019/05/30 Javascript
vue element table中自定义一些input的验证操作
2020/07/18 Javascript
[03:59]5分钟带你了解什么是DOTA2(第二期)
2017/02/07 DOTA
python sys模块sys.path使用方法示例
2013/12/04 Python
Python读取Excel表格,并同时画折线图和柱状图的方法
2018/10/14 Python
python3实现逐字输出的方法
2019/01/23 Python
Django获取应用下的所有models的例子
2019/08/30 Python
python实现打砖块游戏
2020/02/25 Python
jupyter notebook 添加kernel permission denied的操作
2020/04/21 Python
django数据模型中null和blank的区别说明
2020/09/02 Python
驴妈妈旅游网:中国新型的B2C旅游电子商务网站
2016/08/16 全球购物
摩顿布朗英国官方网上商店:奢华沐浴、身体和头发护理
2016/10/29 全球购物
Office DEPOT法国官网:欧迪办公用品采购
2018/01/03 全球购物
法制演讲稿
2014/09/10 职场文书
公司授权委托书
2014/10/17 职场文书
大学生迟到检讨书500字
2014/10/17 职场文书
护士实习自荐信
2015/03/06 职场文书
2015年少先队活动总结
2015/03/25 职场文书
python 逐步回归算法
2021/04/06 Python
Python中super().__init__()测试以及理解
2021/12/06 Python