python合并已经存在的sheet数据到新sheet的方法

yipeiwu_com7年前Python基础

简单的合并,本例是横向合并,纵向合并可以自行调整。

import xlrd 

import xlwt
import shutil 
from xlutils.copy import copy 
import datetime 

# 打开要使用的excel,获取要需要写入的行数 
bk = xlrd.open_workbook('A.xlsx') #打开A文件
nbk = copy(bk)
newsh = nbk.add_sheet('totale') #新建total名字的sheet
nsheet = bk.nsheets
cur_col = 1
#scan all sheet in bk
print(nsheet)
for i in range(0, nsheet):
  sh = bk.sheet_by_index(i)
  print(sh.name)
  nrows = sh.nrows
  ncol = sh.ncols
  print(sh.nrows)
  print(sh.ncols)
  #scan all row in sh
  for j in range(0, ncol-1):
    for k in range(0, nrows-1):
      newsh.write(k,cur_col, label=sh.cell_value(k,j))
    cur_col = cur_col + 1
nbk.save('A-new.xls') #保存为A-new文件,其中包含了原始内容和新的total页

以上这篇python合并已经存在的sheet数据到新sheet的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python实现批量解析邮件并下载附件

python中的email模块可以方便的解析邮件,先上代码 #-*- encoding: gb2312 -*- import os import email def mail_to...

python用列表生成式写嵌套循环的方法

将两个嵌套for循环写成一个列表生成式 如,有一个嵌套列表,a=[[1,2],[3,4],[5,6]],要提取列表里的每一个元素 用for循环处理: for i in a: fo...

python pytest进阶之xunit fixture详解

前言 今天我们再说一下pytest框架和unittest框架相同的fixture的使用, 了解unittest的同学应该知道我们在初始化环境和销毁工作时,unittest使用的是set...

python 实现return返回多个值

函数的return 语句只能返回一个值,可以是任何类型。 因此,我们可以“返回一个 tuple类型,来间接达到返回多个值 ”。 例:   x 除以 y 的余数与商的函...

Python随机生成带特殊字符的密码

在日常运维中,如果涉及到用户管理,就一定会用到给用户设置密码的工作,其实吧,平时脑子里觉得设置个密码没什么,但要真让你随手敲一个12位带特殊字符的随机密码,也是很痛苦的事,如果让你敲10...