Python将多个excel文件合并为一个文件


Posted in Python onJanuary 03, 2018

利用Python,将多个excel文件合并为一个文件

思路

利用python xlrd包读取excle文件,然后将文件内容存入一个列表中,再利用xlsxwriter将内容写入到一个新的excel文件中。

完整代码

# -*- coding: utf-8 -*-

#将多个Excel文件合并成一个
import xlrd
import xlsxwriter

#打开一个excel文件
def open_xls(file):
 fh=xlrd.open_workbook(file)
 return fh

#获取excel中所有的sheet表
def getsheet(fh):
 return fh.sheets()

#获取sheet表的行数
def getnrows(fh,sheet):
 table=fh.sheets()[sheet]
 return table.nrows

#读取文件内容并返回行内容
def getFilect(file,shnum):
 fh=open_xls(file)
 table=fh.sheets()[shnum]
 num=table.nrows
 for row in range(num):
  rdata=table.row_values(row)
  datavalue.append(rdata)
 return datavalue

#获取sheet表的个数
def getshnum(fh):
 x=0
 sh=getsheet(fh)
 for sheet in sh:
  x+=1
 return x


if __name__=='__main__':
 #定义要合并的excel文件列表
 allxls=['F:/test/excel1.xlsx','F:/test/excel2.xlsx']
 #存储所有读取的结果
 datavalue=[]
 for fl in allxls:
  fh=open_xls(fl)
  x=getshnum(fh)
  for shnum in range(x):
   print("正在读取文件:"+str(fl)+"的第"+str(shnum)+"个sheet表的内容...")
   rvalue=getFilect(fl,shnum)
 #定义最终合并后生成的新文件
 endfile='F:/test/excel3.xlsx'
 wb1=xlsxwriter.Workbook(endfile)
 #创建一个sheet工作对象
 ws=wb1.add_worksheet()
 for a in range(len(rvalue)):
  for b in range(len(rvalue[a])):
   c=rvalue[a][b]
   ws.write(a,b,c)
 wb1.close()
 print("文件合并完成")

源文件excel1:

Python将多个excel文件合并为一个文件Python将多个excel文件合并为一个文件

源文件excel2:

Python将多个excel文件合并为一个文件Python将多个excel文件合并为一个文件Python将多个excel文件合并为一个文件

运行结果:

Python将多个excel文件合并为一个文件

合并后的excel3:

Python将多个excel文件合并为一个文件

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

Python 相关文章推荐
从零学Python之入门(三)序列
May 25 Python
python字符串的方法与操作大全
Jan 30 Python
python生成器,可迭代对象,迭代器区别和联系
Feb 04 Python
Python 实现12306登录功能实例代码
Feb 09 Python
Python序列循环移位的3种方法推荐
Apr 09 Python
python+pandas生成指定日期和重采样的方法
Apr 11 Python
Python使用sax模块解析XML文件示例
Apr 04 Python
python数值基础知识浅析
Nov 19 Python
简单了解Python读取大文件代码实例
Dec 18 Python
Python动态声明变量赋值代码实例
Dec 30 Python
Python调用飞书发送消息的示例
Nov 10 Python
Python matplotlib多个子图绘制整合
Apr 13 Python
python中的字典操作及字典函数
Jan 03 #Python
Python将多个excel表格合并为一个表格
Feb 22 #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
You might like
PHP中的超全局变量
2006/10/09 PHP
Laravel 加载第三方类库的方法
2018/04/20 PHP
PHP中__set()实例用法和基础讲解
2019/07/23 PHP
用php实现分页效果的示例代码
2020/12/10 PHP
jquery select(列表)的操作(取值/赋值)
2009/08/06 Javascript
可以用来调试JavaScript错误的解决方案
2010/08/07 Javascript
Javascript 遍历页面text控件详解
2014/01/06 Javascript
js实现图片放大和拖拽特效代码分享
2015/09/05 Javascript
js基于面向对象实现网页TAB选项卡菜单效果代码
2015/09/09 Javascript
原生javascript实现匀速运动动画效果
2016/02/26 Javascript
微信小程序 label 组件详解及简单实例
2017/01/10 Javascript
Vue2.0使用过程常见的一些问题总结学习
2017/04/10 Javascript
JavaScript获取用户所在城市及地理位置
2018/04/21 Javascript
node中使用es6/7/8(支持性与性能)
2019/03/28 Javascript
基于webpack4+vue-cli3项目实现换肤功能
2019/07/17 Javascript
微信小程序 checkbox使用实例解析
2019/09/09 Javascript
浅谈VUE中演示v-for为什么要加key
2020/01/16 Javascript
js实现滑动滑块验证登录
2020/07/24 Javascript
js实现车辆管理系统
2020/08/26 Javascript
微信小程序实现翻牌抽奖动画
2020/09/21 Javascript
vue v-model的用法解析
2020/10/19 Javascript
python实现爬虫统计学校BBS男女比例之数据处理(三)
2015/12/31 Python
python3实现多线程聊天室
2018/12/12 Python
Django如何实现上传图片功能
2019/08/16 Python
python3 pathlib库Path类方法总结
2019/12/26 Python
python str字符串转uuid实例
2020/03/03 Python
解决TensorFlow程序无限制占用GPU的方法
2020/06/30 Python
Python爬虫设置ip代理过程解析
2020/07/20 Python
行政专员的岗位职责
2014/03/10 职场文书
学生评语大全
2014/04/18 职场文书
关于责任的演讲稿
2014/05/20 职场文书
节水口号标语
2014/06/19 职场文书
代领学位证书毕业证书委托书
2014/09/30 职场文书
学校师德师风整改措施
2014/10/27 职场文书
布达拉宫导游词
2015/02/02 职场文书
JS ES6异步解决方案
2021/04/29 Javascript