python不到50行代码完成了多张excel合并的实现示例

1. 简介

在日常的数据处理中,我们经常会遇到需要合并多个Excel表格的情况。传统的做法是打开每个表格,逐行逐列复制粘贴到一个新的表格中。然而,这种方法非常繁琐且容易出错。幸运的是,在Python中,我们可以使用少量的代码来完成这项任务。本文将介绍如何使用Python在不到50行代码的情况下实现多张Excel表格合并。

2. 准备工作

在开始之前,我们首先需要确保计算机中安装了Python和相关的第三方库,例如pandas和openpyxl。可以使用以下命令来安装这些库:

pip install pandas

pip install openpyxl

3. 代码实现

3.1 导入所需库

首先,我们需要导入pandas和openpyxl库:

import pandas as pd

from openpyxl import load_workbook

其中,pandas库提供了数据处理的功能,而openpyxl库则用于处理Excel文件。

3.2 合并Excel表格

接下来,我们需要定义一个函数来合并多个Excel表格:

def merge_excel_files(input_files, output_file):

# 创建一个空的DataFrame

combined_df = pd.DataFrame()

# 循环遍历每个输入文件

for file in input_files:

# 读取Excel文件

wb = load_workbook(file)

# 获取第一个工作表的名字

sheet_name = wb.sheetnames[0]

# 读取工作表的数据并添加到combined_df中

df = pd.read_excel(file, sheet_name=sheet_name)

combined_df = combined_df.append(df, ignore_index=True)

# 将合并后的数据保存到新的Excel文件中

combined_df.to_excel(output_file, index=False)

在代码中,我们创建了一个空的DataFrame(combined_df)来存储合并后的数据。然后,我们循环遍历每个输入文件,读取其中的数据,并将其添加到combined_df中。最后,我们使用to_excel函数将combined_df保存为一个新的Excel文件。

3.3 执行合并

现在,我们可以执行合并操作了。请将以下代码添加到我们的脚本中:

if __name__ == "__main__":

# 定义输入文件列表和输出文件名

input_files = ["file1.xlsx", "file2.xlsx", "file3.xlsx"]

output_file = "merged_file.xlsx"

# 调用合并函数

merge_excel_files(input_files, output_file)

在这个示例中,我们假设我们要合并名为“file1.xlsx”,“file2.xlsx”和“file3.xlsx”的三个Excel文件,并将合并后的结果保存为“merged_file.xlsx”。你可以根据自己的需求修改这些文件的名称。

4. 运行结果

运行脚本后,你将在当前目录下找到一个名为“merged_file.xlsx”的新文件。打开它,你将看到所有输入文件的数据都已经被合并在一起。

5. 总结

通过几十行的Python代码,我们成功实现了多张Excel表格的合并。使用这种方法,我们不仅可以节省大量的时间和精力,还可以避免手动操作导致的错误。希望本文对你在日常的数据处理工作中有所帮助。

后端开发标签