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

      

  • 相关阅读:
    莫队
    NOIP2010_T4_引水入城 bfs+贪心
    拉灯游戏 搜索
    种花小游戏 随机化搜索
    [usaco2003feb]impster
    P1265 公路修建 (prim)
    P3378 【模板】堆
    并查集 模板
    P2661 信息传递
    P1828 香甜的黄油 Sweet Butter (spfa)
  • 原文地址:https://www.cnblogs.com/medik/p/11074937.html
Copyright © 2011-2022 走看看