【python】用python实现多个excel合并成一个excel文件------直接上代码
小虾也是参考了一些大神的代码,然后自己动手实现了一下,然后发布出来,有需要的来学习呀!
小虾在这儿提供2种方法来实现,但小虾比较喜欢第一种,容易而且好理解一点。
第一种实现方法:
# 导入需要使用的包
import xlrd # 读取Excel文件的包
import xlsxwriter # 将文件写入Excel的包source_xls = ["C:/Users/yxx/Desktop/ing/1.xlsx", "C:/Users/yxx/Desktop/ing/2.xlsx"]
target_xls = "C:/Users/yxx/Desktop/ing/3.xlsx"# 读取数据
data = []
for i in source_xls:wb = xlrd.open_workbook(i) # 先打开第一个文件1.xlsxfor sheet in wb.sheets(): # 读取 表中的 工作表sheet的个数for rownum in range(sheet.nrows): # 依次读取一个sheet中的数据data.append(sheet.row_values(rownum)) # 把其数据放入 data[]列表中
print(data) # 打印该列表# 写入数据
workbook = xlsxwriter.Workbook(target_xls) # 创建了一个名字叫做3.xlsx , Excel表格文件
worksheet = workbook.add_worksheet() # 建立sheet,
font = workbook.add_format({"font_size":14}) # 表格中值(字体)的大小
for i in range(len(data)): # 从data列表中读取数据for j in range(len(data[i])):worksheet.write(i, j, data[i][j], font)
# 关闭文件流
workbook.close()
实验结果:
第二种方法实现:
# 导入需要使用的包
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.nrowsfor row in range(num):rdata = table.row_values(row)datavalue.append(rdata)return datavalue# 获取sheet表的个数
def getshnum(f):x = 0sh = getsheet(f)for sheet in sh:x += 1return x# 函数入口
if __name__ == '__main__':# 定义要合并的excel文件列表allxls = ['C:/Users/yxx/Desktop/ing/1.xlsx', 'C:/Users/yxx/Desktop/ing/2.xlsx'] # 列表中的为要读取文件的路径# 存储所有读取的结果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 = 'C:/Users/yxx/Desktop/ing/4.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("文件合并完成")
实验结果:
不后悔过去,不幻想未来,把握好现在,就是对自己最好的交代!!!!!!!!!!!!
【python】用python实现多个excel合并成一个excel文件------直接上代码相关推荐
- 两个excel合并成一个excel
1.如下图是两份excel工作簿分别为某年级期中和期末考试成绩表,现在我们想要将这两个工作簿合并为一个工作簿. 2.将这个两个文档打开 3.任选一个工作簿,点击下图选项(Excel插件,百度即 ...
- python excel合并_Python把多个Excel合并成一个Excel
#! /usr/bin/python3 # -*- coding: utf-8 -*- # @Time : 2018/8/31 16:31 # @File : more_to_one # @Softw ...
- 多个excel合并成一个excel的sheet
1.方案一:使用POI的API 缺点是:数据量稍微大一点生成特别耗时.数据量在3000条记录的样子 优点:不依赖第三方应用,使用POI自己的API完成 建议:小数据量可以满足要求, public cl ...
- python 批量读取xlsx并合并_python合并多个excel表格数据-python如何读取多个excel合并到一个excel中...
python如何读取多个excel合并到一个excel中 思路 利用python xlrd包读取excle文件,然后将文件内容存入一个列表中,再利用xlsxwriter将内容写入到一个新的excel文 ...
- 用python将指定目录下的所有json文件合并成一个csv文件
#!/usr/bin/env python # -*- encoding: utf-8 -*-import sys import json import os import pandas as pd ...
- excel几个表合成一张_快速将多个excel表合并成一个excel表
应用场景:有很多张excel,而且excel表里面的结构基本一样,如何快速将这些excel合并在一个excel页面,便于后期分析和统计 技术实现:利用excel表的宏计算实现. 注意:金山的WPS没有 ...
- excel合并多个工作表_快速将多个Excel表格合并成一个Excel表格
之前在微信群内有朋友问我如何快速将多个Excel表格合并成一个Excel表格,当时没有讲解清楚,今天专门来告诉大家如何快速合并Excel表格到一个工作表中. 在合并表格中,不外乎以下两种情况: 将多个 ...
- 如何快速把多个excel表合并成一个excel表(不熟悉vba及公式的人)
对于不熟悉Excel公式,不熟悉vba的人,要如何按需要快速把多个excel表合并成一个excel表? 对于Excel的合并,很多需要通过vba变成,但对于不熟悉vba编程的人,如何合并呢?给大家推荐 ...
- excel如何把多张表合并成一个表_如何快速把多个excel表格合并成一个excel表
如何快速把多个excel表格合并成一个excel表呢? 首先,我们需要把多个excel表都放在同一个文件夹里面,并在这个文件夹里面新建一个excel文件. 用microsoft excel打开新建的e ...
最新文章
- android 模拟器 device disconnect,Jenkins上的Android模拟器错误:设备离线
- pyspark sparksession_pyspark中的行列互转
- 在人脸识别的时候,一定要穿上衣服啊!
- Dockerfile创建自定义Docker镜像以及CMD与ENTRYPOINT指令的比较
- 专业软件 —— 硬件评测
- (数据库系统概论|王珊)第十章数据库恢复技术:习题
- java sheet_java的poi技术写Excel的Sheet
- explicitWidth与width,和用setActualSize()方法有什么区别?
- 教你怎么蹭网实现和dualwan双倍网速上网
- HTML5能取代Android和iOS应用程序吗?
- 什么是网络通信协议?(七层功能介绍)
- 不二少年在路上之兄弟连完美落地
- 计算机科学丛书 图灵,图灵计算机科学丛书
- 智力题:烧一根不均匀的绳子,从头烧到尾是要1个小时.现在有若干条材质相同的绳子 问如何用烧绳的方法来计时一个小时15分钟.
- 小兵物语---短篇小说
- 9.ESP32--ADC
- Jenkins-Pipline
- 如何点亮一盏LED灯
- ESP8266作为arduino D1 wifi模块应用时引脚序号说明(与UNO对比异同)2.5.0版本开发板库
- R语言ARIMA集成模型预测时间序列分析
热门文章
- 我的学习观(一)——主动学习
- CodeForces_29B
- Python3.8更新笔记
- Al_challenger_2018_sentiment_analysis_top17_基于Aspect Level思路的解决方案
- 多测师拱墅校区肖sir___性能测试之硬件指标
- 支付宝已支持给微信QQ好友转账,但似乎转了个寂寞
- 联发科MT8788芯片处理器简介
- java计算机毕业设计研究生推免系统源码+数据库+系统+lw文档+部署
- erp服务器可以用无线吗,erp可以使用云服务器吗
- 新手必看,期刊分区表官方查询渠道