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("文件合并完成")
    

      

  • 相关阅读:
    使用批处理bat作为日期系统日期的前三天
    电脑桌面显示倒退
    BZOJ 2648/2716(SJY把件-KD_Tree)[Template:KD_Tree]
    yii使用寻呼功能
    宝付额度
    vs2010旗舰版产品密钥
    考察网贷平台是否正规,仅供参考。
    sql server 修改字段大小
    帕累托分析法
    帕累托分析法(Pareto Analysis)(柏拉图分析)
  • 原文地址:https://www.cnblogs.com/medik/p/11074937.html
Copyright © 2011-2022 走看看