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搜索指定目录的方法
Apr 29 Python
在Django的模板中使用认证数据的方法
Jul 23 Python
使用python脚本实现查询火车票工具
Jul 19 Python
python 使用值来排序一个字典的方法
Nov 16 Python
在Python中居然可以定义两个同名通参数的函数
Jan 31 Python
Python批量修改图片分辨率的实例代码
Jul 04 Python
解决Python列表字符不区分大小写的问题
Dec 19 Python
Pytorch训练过程出现nan的解决方式
Jan 02 Python
tensorflow 只恢复部分模型参数的实例
Jan 06 Python
利用python对mysql表做全局模糊搜索并分页实例
Jul 12 Python
Matplotlib 绘制饼图解决文字重叠的方法
Jul 24 Python
Python实现播放和录制声音的功能
Aug 12 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
9个PHP开发常用功能函数小结
2011/07/15 PHP
理解PHP中的stdClass类
2014/04/18 PHP
PHP使用Face++接口开发微信公众平台人脸识别系统的方法
2015/04/17 PHP
php opendir()列出目录下所有文件的实例代码
2016/10/02 PHP
PHP观察者模式示例【Laravel框架中有用到】
2018/06/15 PHP
浅谈Laravel核心解读之Console内核
2018/12/02 PHP
jquery 表格分页等操作实现代码(pagedown,pageup)
2010/04/11 Javascript
jquery实现的鼠标下拉滚动置顶效果
2014/07/24 Javascript
JavaScript函数参数使用带参数名的方式赋值传入的方法
2015/03/19 Javascript
JS实现简单路由器功能的方法
2015/05/27 Javascript
解决jQuery uploadify在非IE核心浏览器下无法上传
2015/08/05 Javascript
js实现PC端和移动端刮卡效果
2020/03/27 Javascript
javascript设计模式之策略模式学习笔记
2017/02/15 Javascript
Vue.js 插件开发详解
2017/03/29 Javascript
在小程序开发中使用npm的方法
2018/10/17 Javascript
Angular(5.2->6.1)升级小结
2018/12/27 Javascript
vue项目中仿element-ui弹框效果的实例代码
2019/04/22 Javascript
layer设置maxWidth及maxHeight解决方案
2019/07/26 Javascript
Python+Django搭建自己的blog网站
2018/03/13 Python
Python实现常见的回文字符串算法
2018/11/14 Python
Pytorch 多块GPU的使用详解
2019/12/31 Python
python通过对字典的排序,对json字段进行排序的实例
2020/02/27 Python
编写python代码实现简单抽奖器
2020/10/20 Python
详解python的变量缓存机制
2021/01/24 Python
美国在线乐器和设备商店:Musician’s Friend
2018/07/06 全球购物
德国电子产品购物网站:TechInTheBasket德国
2018/12/07 全球购物
萨克斯第五大道英国:Saks Fifth Avenue英国
2019/04/01 全球购物
金鑫耀Java笔试题
2014/09/06 面试题
秋季运动会活动方案
2014/02/05 职场文书
区级文明单位申报材料
2014/05/15 职场文书
小学生五年级大队长竞选发言稿
2014/09/12 职场文书
个人先进事迹材料
2014/12/29 职场文书
单身申明具结书
2015/02/26 职场文书
酒店前台接待岗位职责
2015/04/02 职场文书
2019年自助餐厅创业计划书模板
2019/08/22 职场文书
Windows中Redis安装配置流程并实现远程访问功能
2021/06/07 Redis