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实用代码片段收集贴
Jun 03 Python
在Python的Flask框架中构建Web表单的教程
Jun 04 Python
python中requests和https使用简单示例
Jan 18 Python
1分钟快速生成用于网页内容提取的xslt
Feb 23 Python
Python中关键字global和nonlocal的区别详解
Sep 03 Python
Python UnboundLocalError和NameError错误根源案例解析
Oct 31 Python
Python+opencv 实现图片文字的分割的方法示例
Jul 04 Python
Python 多线程搜索txt文件的内容,并写入搜到的内容(Lock)方法
Aug 23 Python
PyTorch使用cpu加载模型运算方式
Jan 13 Python
Django自带用户认证系统使用方法解析
Nov 12 Python
Python下opencv使用hough变换检测直线与圆
Jun 18 Python
python解析照片拍摄时间进行图片整理
Jul 23 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
Yii实现单用户博客系统文章详情页插入评论表单的方法
2015/12/28 PHP
php使用curl详细解析及问题汇总
2016/08/11 PHP
PHP实现导出带样式的Excel
2016/08/28 PHP
php 输出json及显示json中的中文汉字详解及实例
2016/11/09 PHP
PHP iconv()函数字符编码转换的问题讲解
2019/03/22 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
2020/04/04 PHP
Laravel框架使用技巧之使用url()全局函数返回前一个页面的地址方法详解
2020/04/06 PHP
javascript prototype,executing,context,closure
2008/12/24 Javascript
Jjcarousellite 实现图片列表滚动的简单实例
2013/11/29 Javascript
jquery弹出层类代码分享
2013/12/27 Javascript
js简单的点击返回顶部效果实现方法
2015/04/10 Javascript
jquery.mousewheel实现整屏翻屏效果
2015/08/30 Javascript
浅谈如何实现easyui的datebox格式化
2016/06/12 Javascript
AngularJs  E2E Testing 详解
2016/09/02 Javascript
js给table赋值的实例代码
2016/10/13 Javascript
RequireJS简易绘图程序开发
2016/10/28 Javascript
详解nodejs 文本操作模块-fs模块(三)
2016/12/22 NodeJs
JS实现css hover操作的方法示例
2017/04/07 Javascript
layui实现table加载的示例代码
2018/08/14 Javascript
vue 的点击事件获取当前点击的元素方法
2018/09/15 Javascript
nodejs同步调用获取mysql数据时遇到的大坑
2019/03/02 NodeJs
Vue + Node.js + MongoDB图片上传组件实现图片预览和删除功能详解
2020/04/29 Javascript
python从入门到精通(DAY 3)
2015/12/20 Python
python批量赋值操作实例
2018/10/22 Python
pandas的相关系数与协方差实例
2019/12/27 Python
windows、linux下打包Python3程序详细方法
2020/03/17 Python
AmazeUi Tree(树形结构) 应用小结
2020/08/17 HTML / CSS
西班牙拥有最佳品牌的动物商店:Animalear.com
2018/01/05 全球购物
Java如何读取CLOB字段
2013/10/10 面试题
联谊活动策划书
2014/01/26 职场文书
圣诞节红领巾广播稿
2014/02/03 职场文书
第二批党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
2015年科室工作总结
2015/04/10 职场文书
《猴王出世》教学反思
2016/02/23 职场文书
bat批处理之字符串操作的实现
2022/03/16 Python
Win11任务栏无法正常显示 资源管理器不停重启的解决方法
2022/07/07 数码科技