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 相关文章推荐
flask框架实现连接sqlite3数据库的方法分析
Jul 16 Python
Python3中在Anaconda环境下安装basemap包
Oct 21 Python
在python中利用GDAL对tif文件进行读写的方法
Nov 29 Python
用Python写一个模拟qq聊天小程序的代码实例
Mar 06 Python
Python+PyQt5实现美剧爬虫可视工具的方法
Apr 25 Python
在python 中split()使用多符号分割的例子
Jul 15 Python
简单了解django缓存方式及配置
Jul 19 Python
基于Python批量生成指定尺寸缩略图代码实例
Nov 20 Python
Python接口自动化测试的实现
Aug 28 Python
教你漂亮打印Pandas DataFrames和Series
May 29 Python
ubuntu安装jupyter并设置远程访问的实现
Mar 31 Python
python APScheduler执行定时任务介绍
Apr 19 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
复杂检索数据并分页显示的处理方法
2006/10/09 PHP
IIS php环境配置PHP5 MySQL5 ZendOptimizer phpmyadmin安装与配置
2008/11/18 PHP
php数组函数序列 之shuffle()和array_rand() 随机函数使用介绍
2011/10/29 PHP
thinkphp实现附件上传功能
2017/05/26 PHP
Yii框架日志操作图文与实例详解
2019/09/09 PHP
JavaScript建立一个语法高亮输入框实现思路
2013/02/26 Javascript
IE8的JavaScript点击事件(onclick)不兼容的解决方法
2013/11/22 Javascript
多种方法实现360浏览器下禁止自动填写用户名密码
2014/06/16 Javascript
node.js中的buffer.length方法使用说明
2014/12/14 Javascript
javascript使用for循环批量注册的事件不能正确获取索引值的解决方法
2014/12/20 Javascript
JavaScript中number转换成string介绍
2014/12/31 Javascript
js实现简洁的TAB滑动门效果代码
2015/09/06 Javascript
javascript轻量级库createjs使用Easel实现拖拽效果
2016/02/19 Javascript
js仿微信抢红包功能
2020/09/25 Javascript
在 vue-cli v3.0 中使用 SCSS/SASS的方法
2018/06/14 Javascript
go和python调用其它程序并得到程序输出
2014/02/10 Python
python实现自动登录人人网并访问最近来访者实例
2014/09/26 Python
Django 路由系统URLconf的使用
2018/10/11 Python
python ipset管理 增删白名单的方法
2019/01/14 Python
Python字符串对象实现原理详解
2019/07/01 Python
python单向循环链表原理与实现方法示例
2019/12/03 Python
python3 图片 4通道转成3通道 1通道转成3通道 图片压缩实例
2019/12/03 Python
8款使用 CSS3 实现超炫的 Loading(加载)的动画效果
2015/03/17 HTML / CSS
CSS3实现文本垂直排列的方法
2018/07/10 HTML / CSS
html5 datalist标签使用示例(自动完成组件)
2014/05/04 HTML / CSS
美国传奇滑手Paul Rodriguez创办的街头滑板品牌:Primitive Skateboarding
2019/10/29 全球购物
材料加工硕士生求职信
2013/10/10 职场文书
管理信息系学生的自我评价
2014/01/11 职场文书
仓库管理员岗位职责
2014/03/19 职场文书
理财学专业自荐书
2014/06/28 职场文书
工作作风承诺书
2014/08/30 职场文书
资料员岗位职责
2015/02/10 职场文书
社区党务工作总结2015
2015/05/19 职场文书
Pytorch 统计模型参数量的操作 param.numel()
2021/05/13 Python
如何在向量化NumPy数组上进行移动窗口
2021/05/18 Python
CSS变量实现主题切换的方法
2021/06/23 HTML / CSS