zoukankan      html  css  js  c++  java
  • Python合并多个Excel工作簿

    # -*- coding: utf-8 -*-
    
    #导入需要使用的包
    import xlrd  #读取Excel文件的包
    import xlsxwriter   #将文件写入Excel的包
    
    #打开一个excel文件
    def open_xls(file):
        f = xlrd.open_workbook(file)
        return f
    
    #获取excel中所有的sheet表
    def getsheet(f):
        return f.sheets()
    
    
    #获取sheet表的行数
    def get_Allrows(f,sheet):
        table=f.sheets()[sheet]
        return table.nrows
    
    #读取文件内容并返回行内容
    def getFile(file,shnum):
        f=open_xls(file)
        table=f.sheets()[shnum]
        num=table.nrows
        for row in range(num):
            rdata=table.row_values(row)
            datavalue.append(rdata)
        return datavalue
    
    #获取sheet表的个数
    def getshnum(f):
        x=0
        sh=getsheet(f)
        for sheet in sh:
            x+=1
        return x
    
    #函数入口
    if __name__=='__main__':
        #定义要合并的excel文件列表
        allxls=['d:/123.xls','d:/333.xls'] #列表中的为要读取文件的路径
        #存储所有读取的结果
        datavalue=[]
        for fl in allxls:
            f=open_xls(fl)
            x=getshnum(f)
            for shnum in range(x):
                print("正在读取文件:"+str(fl)+"的第"+str(shnum)+"个sheet表的内容...")
                rvalue=getFile(fl,shnum)
        #定义最终合并后生成的新文件
        endfile='d:/excel3.xlsx'
        wb=xlsxwriter.Workbook(endfile)
        #创建一个sheet工作对象
        ws=wb.add_worksheet()
        for a in range(len(rvalue)):
            for b in range(len(rvalue[a])):
                c=rvalue[a][b]
                ws.write(a,b,c)
        wb.close()
    
        print("文件合并完成")
    

      

  • 相关阅读:
    压缩SQL Server数据库Log
    android UI进阶之android中隐藏的layout 抽屉的运用
    android UI进阶之仿iphone的tab效果
    oracle定期备份数据库
    Dundas Chart图形工具使用
    C#获取当前路径备份
    asp.net实现伪静态页面
    SQL Server2008修改表保存错误
    vss2005上传文件
    图片处理C#
  • 原文地址:https://www.cnblogs.com/medik/p/11074937.html
Copyright © 2011-2022 走看看