之前需要用到python合拼excel功能,苦于网上资源并不多于是边看边自己凑一个出来自用,希望能给这方面有需求的人一些帮助。
import sys
import os
from openpyxl import load_workbook
from openpyxl import Workbook
rootdir = sys.path[0] #设置路径,这里是获取当前路径
wb=Workbook()
sheet = wb.active #新建一个excel文档并默认获取第一个工作表
for parent,dirnames,filenames in os.walk(rootdir): #三个参数分别1.目录路径 2.所有文件夹名字 3.所有文件名字
for filename in filenames:
if filename.find(".xlsx") >= 0: #筛选出xlsx类型的文件
xfile = parent+"/"+filename
wb2=load_workbook(xfile)
ws2=wb2.active
for row in ws2.rows:
ar = []
for cell in row:
ar.append(cell.value) #每行的单元格整合到一个数组,再整行添加到新的excel文档
sheet.append(ar)
wb.save('all.xlsx') #最后保存
默认设置为python文件跟excel文件堆放在一起,输出为all.xlsx,excel格式只能支持xlsx的,xls用系统自带xlrd和xlwt吧。