Python怎么对多个sheet表进行整合
发表于:2024-11-28 作者:千家信息网编辑
千家信息网最后更新 2024年11月28日,这篇文章主要介绍"Python怎么对多个sheet表进行整合",在日常操作中,相信很多人在Python怎么对多个sheet表进行整合问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对
千家信息网最后更新 2024年11月28日Python怎么对多个sheet表进行整合
这篇文章主要介绍"Python怎么对多个sheet表进行整合",在日常操作中,相信很多人在Python怎么对多个sheet表进行整合问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Python怎么对多个sheet表进行整合"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
说明
1、xlwt模块是非追加写入.xls模块,所以要一次性写入for循环和列表,这样就没有追加和非追加的说法。
2、将Excel表合并,将每一个Excel表作为行,即行合并,换个想法,将Excel表中的标签作为列,可以进行列合并,即将不同文件中相同标签组成的不同标签合并,可以先将不同文件中相同的标签合并,不同文件中相同的标签组成一个列表,然后将前面组成的不同标签合并,就可以得到所有Excel文件的内容。
实例
#导入xlrd和xlwt模块#xlrd模块是读取.xls的Excel文件的模块,xlwt模块是以非追加的方式写.xls的Excel文件的模块import xlrd,xlwt#导入要读的文件的路径a=["C:/Users/Desktop/m1.xls","C:/Users/Desktop/m2.xls"]#定义要写的文件的路径b="C:/Users/Desktop/m3.xls"#定义函数,判断打开文件是否会发生异常def open(fileaddress): try:#通过xlrd模块的open_workbook()方法,打开一个Excel文件,定义变量fo为文件句柄 fo=xlrd.open_workbook(fileaddress) return fo except Exception as e: print("error!"+str(e))#定义函数,得到某一个Excel文件下某一个标签的行数def getrows(fo,num): table=fo.sheets()[num]#sheets()函数为xlrd模块自带函数,能以列表的形式返回该Excel文件的标签 n=table.nrows#nrows为xlrd模块自带函数,通过某一个标签调用,可得到该标签的行数 return n"""定义函数,可通过Excel文件路径和标签的序列编号得到任意Excel文件任意标签的内容,且以列表的形式返回"""def getsheetcontents(fileaddress,num): avalue=[] fo=open(fileaddress) table=fo.sheets()[num] n=table.nrows for i in range(0,n): """ row_values()函数为xlrd模块自带函数,通过某一个标签调用, 可得到该标签的行数据,且这些行数据以列表形式返回,标签中 一列为一个列表的元素 """ rdate=table.row_values(i) avalue.append(rdate) return avaluesvalue=[]k=[]#通过for循环得到所有Excel文件的标签数,且以列表的形式返回for i in a: fo=open(i) k.append(len(fo.sheets()))#对这些标签数进行升序排序k.sort()#通过for循环把这些Excel文件中不同标签的所有内容放在列表svalue中for i in range(0,k[len(k)-1]):#通过for循环把不同Excel文件的同一个标签放在列表bvalue中 bvalue=[] for j in a: print("正在读取"+str(j)+"的第"+str(i)+"个标签") bvalue.append(getsheetcontents(j,i)) svalue.append(bvalue)#svalue里面就是所有Excel文件的内容 #通过xlwt模块的Workbook()创建一个.xls文件,定义一个变量fw为文件句柄fw=xlwt.Workbook()line=0#add_sheet()函数为xlwt模块自带函数,可得到一个自定义标签#定义变量ws为标签句柄ws=fw.add_sheet("sheet1")"""通过for循环遍历svalue列表,把最终得到的某个标签某个文件某行某列的数据写入新标签中"""for i in range(0,len(svalue)): for j in range(0,len(svalue[i])): for m in range(0,len(svalue[i][j])): for n in range(0,len(svalue[i][j][m])): ws.write(line,n,svalue[i][j][m][n])#通过line可得到不断增加的行数 line+=1print("合并完成")#save()函数为xlwt自带函数,将合并好的Excel文件保存到某个路径下fw.save(b)#xlrd模块和xlwt模块都没有close()函数,即用这两个模块打开文件不用关闭文件
到此,关于"Python怎么对多个sheet表进行整合"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
文件
标签
模块
函数
不同
循环
多个
整合
内容
形式
路径
学习
相同
变量
句柄
数据
方法
更多
帮助
实用
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全教育条幅
天津统一软件开发价格
数据库起不来的原因
工作流程 数据库设计
网络安全产品分为几大类
四级数据库工程师能评职称吗
三维家软件开发流程
网络安全健康上网内容
2017网络安全宣传策划
云服务器能加内存吗
服务器机架安装图解
北京云核网络技术公司
它们是通过什么访问数据库
树莓派安装mysql数据库
德阳软件开发电话
软件开发市场的危险
邳州云存储服务器
惠普服务器耗电量是多少
温州桌面软件开发安全
软件开发外包的优缺点
魔兽世界赛季服务器广告
网络安全的感知
php 内置服务器
怎么在数据库修改登录密码
虹口区一站式软件开发出厂价格
大型服务器怎么连接电视
服务器显卡接口图解
台州乐游网络技术有限公司
温州桌面软件开发安全
易自成 sacc数据库大会