python合并多个excel代码_python如何实现excel多表合并(附代码)

5efacfed2b4ea781.jpg

今天来用python实现合并多个excel为一个工作本,使用不到40行代码完成了60多张excel工作本合并为一张,大家一起来看看吧。

本篇使用的不是openpyx库,使用的使是xlrd,xlwt库,虽然这两库功能没法根openpyx相比,但可以操作xls结尾的旧版excel而openpyx不支持

代码

大体思路如下遍历获取根目录下的所有excel文件

根据excel名称进行匹配获取某类excel

创建工作本用于写入拷贝的数据

每个excel都有一张Sheet1,循环遍历单元格写入创建的工作本

详细过程写在代码里面# -*- coding: utf-8 -*-

import xlrd

import xlwt

import os

import 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 list

if __name__ == "__main__":

# 创建工作本

write_book = xlwt.Workbook()

# 根目录

root = r'C:\mydata\generator\excel'

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')

感谢大家的阅读,希望大家收益多多。

本文转自:https://blog.csdn.net/youku1327/article/details/105300668

以上就是python如何实现excel多表合并(附代码)的详细内容,更多请关注随便开发网其它相关文章!

  • 0
    点赞
  • 0
    评论
  • 1
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
©️2021 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值