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标准库之sqlite3使用实例
Nov 25 Python
python生成excel的实例代码
Nov 08 Python
python生成tensorflow输入输出的图像格式的方法
Feb 12 Python
wxPython实现窗口用图片做背景
Apr 25 Python
python自动发送邮件脚本
Jun 20 Python
Python for循环与range函数的使用详解
Mar 23 Python
python3实现的zip格式压缩文件夹操作示例
Aug 17 Python
Python3使用xml.dom.minidom和xml.etree模块儿解析xml文件封装函数的方法
Sep 23 Python
TensorFlow索引与切片的实现方法
Nov 20 Python
Python装饰器结合递归原理解析
Jul 02 Python
Django实现文章详情页面跳转代码实例
Sep 16 Python
Python爬取你好李焕英豆瓣短评生成词云的示例代码
Feb 24 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
PHP比较运算符的详细介绍
2015/09/29 PHP
php如何执行非缓冲查询API
2016/07/22 PHP
利用Homestead快速运行一个Laravel项目的方法详解
2017/11/14 PHP
jquery cookie插件代码类
2009/05/26 Javascript
javascript 数组排序函数
2009/08/20 Javascript
jquery中获取id值方法小结
2013/09/22 Javascript
百度UEditor编辑器如何关闭抓取远程图片功能
2015/03/03 Javascript
js调出上下文菜单的实例
2015/12/17 Javascript
Bootstrap每天必学之折叠(Collapse)插件
2016/04/25 Javascript
jQuery动态创建元素以及追加节点的实现方法
2016/10/20 Javascript
jQuery生成假加载动画效果
2016/12/01 Javascript
vue.js学习之UI组件开发教程
2017/07/03 Javascript
原生JS实现的双色球功能示例
2018/02/02 Javascript
vue.draggable实现表格拖拽排序效果
2018/12/01 Javascript
JS 设计模式之:单例模式定义与实现方法浅析
2020/05/06 Javascript
JavaScript实现随机点名小程序
2020/10/29 Javascript
原生JavaScript实现五子棋游戏
2020/11/09 Javascript
[02:21]DOTA2英雄基础教程 蝙蝠骑士
2013/12/16 DOTA
[01:07:53]RNG vs VG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
.dcm格式文件软件读取及python处理详解
2020/01/16 Python
matplotlib阶梯图的实现(step())
2021/03/02 Python
input file上传文件样式支持html5的浏览器解决方案
2012/11/14 HTML / CSS
高街生活方式全球在线商店:AZBRO
2017/08/26 全球购物
eBay比利时购物网站:eBay.be
2019/08/09 全球购物
科颜氏香港官方网店:Kiehl’s香港
2021/03/07 全球购物
西安当代医院管理研究院笔试题
2015/12/11 面试题
医学生个人求职信范文
2014/02/07 职场文书
《哪吒闹海》教学反思
2014/02/28 职场文书
光信息科学与技术专业职业生涯规划
2014/03/13 职场文书
农林环境专业求职信
2014/03/13 职场文书
学校春季防火方案
2014/06/08 职场文书
2014第二批党的群众路线教育实践活动对照检查材料思想汇报
2014/09/18 职场文书
2014年导购员工作总结
2014/11/18 职场文书
2015年党员发展工作总结
2015/05/13 职场文书
2015年共青团工作总结
2015/05/15 职场文书
MySQL非空约束(not null)案例讲解
2021/08/23 MySQL