python如何实现excel多表合并?其实非常容易实现,小编今天就给大家分享一个实现通过python来进行excel多表合并的方法,感兴趣的小伙伴可以认真阅读完这篇文章 。
文章插图
这个方法小编使用的不是openpyx库,而用的是xlrd,xlwt库,虽然这两库功能没法根openpyx相比,但是它们也是可以操作xls结尾的旧版excel的,而openpyx不支持 。
代码
大体思路如下
- 遍历获取根目录下的所有excel文件
- 根据excel名称进行匹配获取某类excel
- 创建工作本用于写入拷贝的数据
- 【含代码 python如何实现excel多表合并?这篇文章教会你!】每个excel都有一张Sheet1,循环遍历单元格写入创建的工作本
# -*- coding: utf-8 -*-import xlrdimport xlwtimport osimport re""" 写入工作本 """def write_excel(path, write_sheet): # 加载工作本 book = xlrd.open_workbook(path) # 获取表单 read_sheet = book.sheet_by_name('Sheet1') # 遍历 for row in range(read_sheet.nrows): for col in range(read_sheet.ncols): write_sheet.write(row, col, read_sheet.cell_value(row,col)) # 获取根目录下所有文件名def walk(path): for root,dirs,names in os.walk(path): list = [] for filename in names: path = os.path.join(root, filename) list.append(path) return listif __name__ == "__main__": # 创建工作本 write_book = xlwt.Workbook() # 根目录 root = r'C:mydatageneratorexcel' path_list = walk(root) for path in path_list: val = path.find("本专科") if val!=-1: # 正则匹配 ser = re.search('.*20200403(.*?).xls',path) name = ser.group(1) # 创建sheet write_sheet = write_book.add_sheet(name) # 写入 write_excel(path, write_sheet) # 保存 write_book.save(r'本专科.xls')以上就是小编给大家带来的在python实现excel多表合并的方法了,希望大家通过阅读小编的文章之后能够有所收获!如果大家觉得小编的文章不错的话,可以多多分享给有需要的人 。
推荐阅读
- 如何在python打开文件的路径?这篇文章一定要仔细看
- python做web开发好吗?这篇文章看完你就知道了
- python中如何引用包?这篇文章教给你方法
- python中怎么把列表转成字符串?这篇文章值得一看
- Python采用什么开源协议?详解GPL协议
- Python中的栈是什么?Python如何去创建一个栈
- python装饰器是什么?这篇文章超详细必看!
- Python随机数如何不重复?这个代码可以直接用
- 安装完Python怎么打开?三个方法需要知道
- Python中的skimage库怎么使用?正确用法是这样