【代码】Python实现Excel数据合并

简介: 【代码】Python实现Excel数据合并

概要

通过遍历指定目录下的多个Excel文件,将它们的数据合并到一个新的Excel文件中,实现Excel数据合并的功能。

整体架构流程

代码的主要流程如下:

导入所需的库:os用于文件路径操作,openpyxl用于处理Excel文件。


定义目录路径和保存的新文件名:将要合并的Excel文件所在的目录路径赋值给dir_path变量,合并后的Excel文件的文件名赋值给new_file_name变量。


创建新的工作簿对象:通过Workbook()函数创建一个新的工作簿对象,并使用.active属性获取默认的工作表。


遍历目录下的所有xlsx文件:使用os.listdir()函数遍历指定目录下的所有文件,判断文件名是否以.xlsx结尾,如果是则认为是Excel文件。


读取文件中的工作表:使用load_workbook()函数加载Excel文件,得到一个工作簿对象,然后使用.active属性获取默认的工作表。


遍历数据行并复制到新的工作表中:通过iter_rows()方法遍历每一行的数据,将每一行的数据以列表的形式追加到新的工作表中。


保存合并后的数据到新文件中:使用save()方法将新的工作簿对象保存为一个新的Excel文件,文件路径为合并目录下的new_file_name。


打印合并完成的提示信息。

代码

import os
from openpyxl import Workbook, load_workbook

# 定义路径和保存的新文件名
dir_path = 'F:/code_test/fenlei'
new_file_name = 'merged.xlsx'

# 初始化一个新的工作簿对象
merged_book = Workbook()
merged_sheet = merged_book.active

# 遍历目录下的所有xlsx文件
for filename in os.listdir(dir_path):
    if filename.endswith('.xlsx'):
        file_path = os.path.join(dir_path, filename)
        print(f"Reading data from {file_path}")
        
        # 读取文件中的工作表
        file_book = load_workbook(file_path)
        file_sheet = file_book.active
        
        # 遍历数据行并将它们复制到新的工作表中
        for row in file_sheet.iter_rows(values_only=True):
            merged_sheet.append(row)

# 将数据保存到新文件中
merged_book.save(os.path.join(dir_path, new_file_name))

print("All files have been merged and saved to " + new_file_name)

小结

这段代码的功能是将指定目录下的多个Excel文件中的数据合并到一个新的Excel文件中。

相关文章
|
22小时前
|
人工智能 数据挖掘 大数据
538个代码示例!麻省理工教授的Python程序设计+人工智能案例实践
Python简单易学,且提供了丰富的第三方库,可以用较少的代码完成较多的工作,使开发者能够专注于如何解决问题而只花较少的时间去考虑如何编程。 此外,Python还具有免费开源、跨平台、面向对象、胶水语言等优点,在系统编程、图形界面开发、科学计算、Web开发、数据分析、人工智能等方面有广泛应用。 尤其是在数据分析和人工智能方面,Python已成为最受开发者欢迎的编程语言之一,不仅大量计算机专业人员选择使用Python进行快速开发,许多非计算机专业人员也纷纷选择Python语言来解决专业问题。 由于Python应用广泛,关于Python的参考书目前已经有很多,但将Python编程与数据分析、人工智
|
1天前
|
数据处理 Python
从零开始学迭代器生成器:打造高效、易读的Python代码
从零开始学迭代器生成器:打造高效、易读的Python代码
|
1天前
|
机器学习/深度学习 算法 索引
Python常用极简代码
Python常用极简代码
23 5
|
1天前
|
Python
Python实用案例代码详解
Python实用案例代码详解
10 2
|
1天前
|
Python
python 代码脚本汇编
python 代码脚本汇编
13 0
|
1天前
|
分布式计算 API 开发者
编写高质量Python代码的方法
编写高质量Python代码的方法
13 0
|
1天前
|
索引 Python
8条非常实用的python代码
8条非常实用的python代码
|
1天前
|
算法 索引 Python
Python十段经典代码总结
Python十段经典代码总结
|
1天前
|
存储 Python
Python处理文件的常用代码
Python处理文件的常用代码
|
1天前
|
数据采集 人工智能 Python
好玩的 Python 代码
好玩的 Python 代码