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

yipeiwu_com6年前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中的__init__()方法

__init__()方法意义重大的原因有两个。第一个原因是在对象生命周期中初始化是最重要的一步;每个对象必须正确初始化后才能正常工作。第二个原因是__init__()参数值可以有多种形式...

用Python进行一些简单的自然语言处理的教程

本月的每月挑战会主题是NLP,我们会在本文帮你开启一种可能:使用pandas和python的自然语言工具包分析你Gmail邮箱中的内容。 NLP-风格的项目充满无限可能: &nbs...

python中threading超线程用法实例分析

本文实例讲述了python中threading超线程用法。分享给大家供大家参考。具体分析如下: threading基于Java的线程模型设计。锁(Lock)和条件变量(Condition...

numpy中三维数组中加入元素后的位置详解

numpy中三维数组中加入元素后的位置详解

今天做数据处理时,遇到了从三维数组中批量加入二维数组的需求。其中三维数组在深度学习的特征数据处理时经常会使用到,所以读者有必要对该小知识点做到清楚了解并掌握。现对三维数组中的元素位置结合...

详解Python3 中的字符串格式化语法

一、旧式的字符串格式化 % 操作符 参考以下示例: >>> name = "Eric" >>> "Hello, %s." % name 'He...