广告
返回顶部
首页 > 资讯 > 后端开发 > Python >教你用Python代码实现合并excel文件
  • 907
分享到

教你用Python代码实现合并excel文件

2024-04-02 19:04:59 907人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录一、安装模块二、XlsxWriter 示例三、合并excel数据四、表头都一样的 excel五、表头都不一样的 excel六、合并后的结果一、安装模块 1、找到对应的模块 Htt

一、安装模块

1、找到对应的模块 Http://www.python-excel.org/

2、用 pip install 安装

pip3 install xlrd
pip3 install XlsxWriter

因为使用的是 python3,所以安装的时候采用 pip3。

二、XlsxWriter 示例

先看看简单的演示:


import xlsxwriter
 
# 创建一个工作簿并添加一个工作表
workbook = xlsxwriter.Workbook("c.xlsx")
worksheet = workbook.add_worksheet()
 
# 设置列宽
worksheet.set_column("A:A", 20)
 
# 设置格式
bold = workbook.add_fORMat({"bold": True})
 
# 设置单元格的值
worksheet.write("A1", "Hello")
 
# 带格式的单元格
worksheet.write("A2", "World")
 
# 写一些数字,用行列标识
worksheet.write(2, 0, 123)
worksheet.write(3, 0, 123.456, bold)
 
# 插入一张图片
worksheet.insert_image("B5", "s.png")
 
# 关闭文件流
workbook.close()

运行结果如下:

在这里插入图片描述

三、合并Excel数据

对于合并 excel,有两种 case ,一种是表头都是一样的,一种是表头不一样的excel ,但是希望放到同一个表格里面,方便查看

四、表头都一样的 excel

这个处理很简单,具体代码如下:


import xlrd
import xlsxwriter
 
source_xls = ["a.xlsx", "b.xlsx"]
target_xls = "3.xlsx"
 
# 读取数据
data = []
for i in c:
 wb = xlrd.open_workbook(i)
 for sheet in wb.sheets():
  for rownum in range(sheet.nrows):
   data.append(sheet.row_values(rownum))
print(data)
# 写入数据
workbook = xlsxwriter.Workbook(target_xls)
worksheet = workbook.add_worksheet()
font = workbook.add_format({"font_size": 14})
for i in range(len(data)):
 for j in range(len(data[i])):
  worksheet.write(i, j, data[i][j], font)
# 关闭文件流
workbook.close()

Excel 是由行和列组成的,所以这里将所有文件中的所有 sheet 中的数据读取出来组成一个二维数组,然后再写入新的 Excel。

五、表头都不一样的 excel

对于表头不一样的 excel,可能需要手动选取表格的一部分,然后进行合并。具体代码如下:


import xlrd
import xlsxwriter
 
source_xls = ["a.xlsx", "b.xlsx"]
target_xls = "合并.xlsx"
 
# 读取数据
data = []
# 重复数据
dupdata = []
# 姓名列表,按照姓名去重
name = []
# 获取excel的个数
sheetcount = len(source_xls)
i = 0
while i < len(source_xls):
 wb = xlrd.open_workbook(source_xls[i])
 # 存储不同excel 的数据
 data.append([])
 # 一个excel 可能存在多张表格
 for sheet in wb.sheets():
  if i == 0:
   # 先把表头添加进去
   dupdata.append(sheet.row_values(0))
  for rownum in range(sheet.nrows):
   # 判断名字是否重复,表头都是姓名开头的,所以把姓名除去
   if (sheet.row_values(rownum)[0] in name):
    dupdata.append(sheet.row_values(rownum))
    # 给数据添加另一个表的表头
    if (sheet.row_values(rownum)[0] == '姓名'):
     data[i].append(sheet.row_values(rownum))
   else:
    name.append(sheet.row_values(rownum)[0])
    data[i].append(sheet.row_values(rownum))
 i+=1
 
# 合并数据
workbook = xlsxwriter.Workbook(target_xls)
worksheet = workbook.add_worksheet()
font = workbook.add_format({"font_size": 14})
lineNum = 0
for num in range(len(data)):
 # 区分来自不同excel 的数据
 if num== 0 :
  for i in range(len(data[num])):
   # 姓名
   worksheet.write(lineNum, 0, data[num][i][0], font)
   # 检查编号
   worksheet.write(lineNum, 1, data[num][i][1], font)
   # 年龄
   worksheet.write(lineNum, 2, data[num][i][23], font)
   # 蓝标
   worksheet.write(lineNum, 3, data[num][i][14], font)
   # 黄标
   worksheet.write(lineNum, 4, data[num][i][19], font)
   worksheet.write(lineNum, 5, data[num][i][20], font)
   worksheet.write(lineNum, 6, data[num][i][21], font)
   # 大小
   worksheet.write(lineNum, 7, data[num][i][24], font)
   worksheet.write(lineNum, 8, data[num][i][25], font)
   worksheet.write(lineNum, 9, data[num][i][26], font)
   
   lineNum += 1
 # 只有两个excel ,所以直接用了 else 
 else:
  for i in range(len(data[num])):
   lineNum += 1
   # 姓名
   worksheet.write(lineNum, 0, data[num][i][0], font)
   # 检查编号
   worksheet.write(lineNum, 1, data[num][i][1], font)
   # 年龄
   worksheet.write(lineNum, 2, data[num][i][2], font)
   # 蓝标
   worksheet.write(lineNum, 3, data[num][i][30], font)
# 关闭文件流
workbook.close()
 
# 针对重复数据,连表头一起输出,方便后续回顾查看
workbook = xlsxwriter.Workbook("重复.xlsx")
worksheet = workbook.add_worksheet()
font = workbook.add_format({"font_size": 14})
for i in range(len(dupdata)):
 for j in range(len(dupdata[i])):
  worksheet.write(i, j, dupdata[i][j], font)
# 关闭文件流
workbook.close()

六、合并后的结果

在这里插入图片描述

重复列表结果如下:

在这里插入图片描述

到此这篇关于教你用Python代码实现合并excel文件的文章就介绍到这了,更多相关Python合并excel文件内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 教你用Python代码实现合并excel文件

本文链接: https://www.lsjlt.com/news/126365.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 教你用Python代码实现合并excel文件
    目录一、安装模块二、XlsxWriter 示例三、合并Excel数据四、表头都一样的 excel五、表头都不一样的 excel六、合并后的结果一、安装模块 1、找到对应的模块 htt...
    99+
    2022-11-12
  • 怎么用Python代码合并多个Excel文件
    这篇文章主要介绍“怎么用Python代码合并多个Excel文件”,在日常操作中,相信很多人在怎么用Python代码合并多个Excel文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Python代码合并...
    99+
    2023-06-16
  • Python怎么实现Excel文件的合并
    本文小编为大家详细介绍“Python怎么实现Excel文件的合并”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python怎么实现Excel文件的合并”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、单目录下面...
    99+
    2023-06-29
  • 如何用python合并多个excel文件
    目录安装模块 XlsxWriter 示例 合并Excel数据 表头都一样的 excel 表头都不一样的 excel 表头都不一样的 excel 安装模块 1、找到对应的模块 &nb...
    99+
    2022-11-11
  • 怎么用python合并多个excel文件
    本篇内容主要讲解“怎么用python合并多个excel文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用python合并多个excel文件”吧!python可以做什么Python是一种编程...
    99+
    2023-06-14
  • Python:实现文本转换为Excel文件(附代码)
    Python:实现文本转换为Excel文件(附代码) 在日常办公和生活中,我们经常需要将文本文件转换为Excel文件,以便更好地进行管理和处理。利用Python编程语言,可以非常方便地实现这一操作。 ...
    99+
    2023-09-17
    python excel 数学建模
  • 教你用python将数据写入Excel文件中
    目录一、导入excel表格文件处理函数二、创建excel表格类型文件三、在excel表格类型文件中建立一张sheet表单四、自定义列名五、将列属性元组col写进sheet表单中六、将...
    99+
    2022-11-13
  • python实现文本文件合并
    python合并文本文件示例代码。 python实现两个文本合并 employee文件中记录了工号和姓名 cat employee.txt: 100 Jason Smith 200 John Doe...
    99+
    2022-06-04
    文本 文件合并 python
  • 用python将word文档合并实例代码
    目录背景:设计思路:脚本环境说明:完整代码:功能执行效果图:总结:背景:         由于工作需要,现在有这么一个需求,要合并大量的word文档,而且要在不同的目录下找到同一个人...
    99+
    2022-11-12
  • 教你用python提取txt文件中的特定信息并写入Excel
    目录问题描述:工具:操作:源代码:Reference:总结问题描述: 我有一个这样的数据集叫test_result_test.txt,大概几百上千行,两行数据之间隔一个空行。 N...
    99+
    2022-11-12
  • 教你用Python实现Excel表格处理
    目录一、文件二、代码三、分析四、pd.ExcelFile五、总结一、文件 一个测试有两个sheet页的Excel测试文件 test.xlsx 二、代码 import panda...
    99+
    2022-11-12
  • python一行代码合并了162个Word文件
    目录引言1、上代码2、相关功能引言 周末我和小明又开始了疯狂的考证学习,昨晚通过合法的手段获取了一套学习资料,却遇到了一个问题: 一套完整的资料,被机构拆分成了162个word文件...
    99+
    2023-03-21
    python合并Word文件 python Word
  • Python实现Excel文件的合并(以新冠疫情数据为例)
    目录一、单目录下面的数据合并二、使用函数进行数据合并三、处理港澳台数据注:本篇文章以新冠疫情数据文件的合并为例。 需要相关数据的请移步:》2020-2022年新冠疫情数据 一、单目录...
    99+
    2022-11-13
  • 利用python Pandas实现批量拆分Excel与合并Excel
    目录一、实例演示二、读取源Excel到Pandas三、将一个大Excel等份拆成多个Excel四、合并多个小Excel到一个大Excel一、实例演示 将一个大Excel等份拆成多个Excel 2.将多个小Excel合...
    99+
    2022-06-02
    Pandas批量拆分Excel pandas批量合并Excel python pandas
  • 怎么用一行python代码合并162个Word文件
    这篇文章主要介绍“怎么用一行python代码合并162个Word文件”,在日常操作中,相信很多人在怎么用一行python代码合并162个Word文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用一行py...
    99+
    2023-07-05
  • Python excel合并居中值相同的单元格实例代码
    目录前言处理前的单元格代码分解讲解总结前言 这里要说明一下,本文包含的代码其中一部分并不是自己写的,是我找了很多文章拼凑出来的,比如如何找相同内容的单元格、怎么合并、怎么居中等等。出...
    99+
    2022-11-12
  • Pandas实现批量拆分与合并Excel的示例代码
    目录前言一、拆分成小表格二、合并excel1.介绍2.代码前言 提示:这里可以添加本文要记录的大概内容: 将一个EXCEL等份拆成多个EXCEL 将多个小EXCEL合并成一个大EXC...
    99+
    2022-11-11
  • Python实现本地csv文件合并
    目录一、单文件之间合并二、单个文件夹底下多个文件合并三、多个文件夹底下多个文件合并四、多文件夹[函数递归]总结本篇的文件合并主要是针对.csv的文件合并。 一、单文件之间合并 首先...
    99+
    2022-11-13
  • python实现自动化之文件合并
    假如公司需要统计每个员工的个人信息,制定好模板后,由员工填写,然后发送到综合部进行汇总,在这种情况下,如果公司有上百位员工的信息需要统计,且采用纯手工进行复制粘贴的方式进行汇总,则将是一项耗时费力易错的工作。本文主要...
    99+
    2022-06-02
    python 文件合并
  • Java实现合并word文档的示例代码
    目录说明实现1.首先定义好主文档2.定义需要追加的文档3. 代码实现4. 成果展示说明 在做项目中,遇到了一种情况,需要将一个小word文档的内容插入到一个大word(主文档)中。 ...
    99+
    2022-11-13
    Java合并word文档 Java合并word Java合并文档
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作