DONGCHAO

Good Luck To You!

python合并子文件夹中的excel

合并子文件夹下全部excel如下所示

# -*- coding: utf-8 -*-
# @Time    : 2023/6/9 11:04
# @Author  : JDC
# @File    : test.py
# @Software: PyCharm
# 读取一个文件夹下的全部子文件夹中的excel,如果子文件夹中的excel文件数量大于1,则将当前子文件夹下的全部excel合并为一个以子文件夹名命名的excel

# 下面的代码通过遍历文件夹及子文件夹中的所有excel文件,并判断每个子文件夹下的excel文件数量是否大于1,如果是,则执行合并操作。
# 合并操作包括读取所有excel文件到DataFrame中,并将它们通过`pd.concat()`函数合并为一个DataFrame,
# 最后将合并后的DataFrame写入以子文件夹名命名的excel文件中。注意,代码中使用了`os.sep`表示当前操作系统的路径分隔符。

import os
import glob
import pandas as pd

# 定义要读取的文件夹路径
folder_path = 'D:/example/test'
# 定义合并后的excel文件路径
merged_folder_path = 'D:/example/merge/'

if not os.path.exists(merged_folder_path):
    print('存储路径不存在', end='')
    os.mkdir(merged_folder_path)
    print('已创建')

# 遍历文件夹及子文件夹中的所有excel文件
for root, dirs, files in os.walk(folder_path):
    # 获取当前子文件夹路径
    current_folder_path = os.path.abspath(root)
    # 获取当前子文件夹下的所有excel文件(使用glob模块搜索满足条件的文件)
    excel_files = glob.glob(os.path.join(current_folder_path, '*.xls*'))
    # 如果当前子文件夹下的excel文件数量大于1,则执行合并操作
    if len(excel_files) > 1:
        # 定义合并后的excel文件名为子文件夹名
        merged_excel_file_name = current_folder_path.split(os.sep)[-1] + '.xlsx'
        # merged_excel_file_path = os.path.join(current_folder_path, merged_excel_file_name)
        # 指定输出文件路径
        merged_excel_file_path = os.path.join(merged_folder_path, merged_excel_file_name)
        # 合并当前子文件夹下的所有excel文件到一个DataFrame中
        df_list = []
        for excel_file in excel_files:
            df = pd.read_excel(excel_file)
            df_list.append(df)
        merged_df = pd.concat(df_list, ignore_index=True)
        # 将合并后的DataFrame写入excel文件
        merged_df.to_excel(merged_excel_file_path, index=False)
        print('合并了文件夹 {} 下的 {} 个Excel文件为一个文件:{}'.format(current_folder_path, len(excel_files), merged_excel_file_path))


  • 评论列表
  •  访客磁选机厂家
     发布于 2024-07-31 17:29:49  回复该评论
  • 识别码:tngyph81032JR-感谢分享,这篇博客简直就是我的知识宝库,学到了很多实用的技巧。www.well-techmachinery.com/xinwendongtai/1651.html

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年1月    »
1234567
891011121314
15161718192021
22232425262728
293031
网站分类
搜索
最新留言
文章归档
友情链接
  • 订阅本站的 RSS 2.0 新闻聚合

Powered By Z-BlogPHP 1.7.2

© 2023 DONGCHAO.ORG.CN All Rights Reserved. 版权所有:豫ICP备2023000417号-1