Python - 如何合并文件夹中的所有 excel 文件

pythonserver side programmingprogramming更新于 2025/11/17 1:16:17

要合并文件夹中的所有 excel 文件,请使用 Glob 模块和 append() 方法。

假设以下是桌面上的 excel 文件 −

Sales1.xlsx

Sales2.xlsx

注意 − 您可能需要安装 openpyxl 和 xlrd 包。

首先,设置要合并的所有 excel 文件所在的路径。获取 excel 文件并使用 glob − 读取它们

path = "C:\Users\amit_\Desktop\"

filenames = glob.glob(path + "\*.xlsx")
print('File names:', filenames)

接下来,为合并的输出 excel 文件创建一个空的数据框,它将从上述两个 excel 文件中获取数据 −

outputxlsx = pd.DataFrame()

现在,可以看到实际的过程,即首先使用 for 循环迭代 excel 文件。读取 excel 文件,将它们连接起来并附加数据 −

for file in filenames:
   df = pd.concat(pd.read_excel(file, sheet_name=None), ignore_index=True, sort=False)
   outputxlsx = outputxlsx.append(df, ignore_index=True)

示例

以下是代码 −

import pandas as pd
import glob

# 从桌面获取要合并的 excel 文件
path = "C:\Users\amit_\Desktop\"

# 读取所有扩展名为 .xlsx 的文件,即 excel
filenames = glob.glob(path + "\*.xlsx")
print('File names:', filenames)

# 为合并的 excel 文件清空新输出 excel 文件的数据框
outputxlsx = pd.DataFrame()

# for 循环迭代所有 excel 文件
for file in filenames:
   # 使用 concat 处理 excel 文件
   # 使用 read_excel() 读取后
   df = pd.concat(pd.read_excel( file, sheet_name=None), ignore_index=True, sort=False)

   # 附加 excel 文件的数据
   outputxlsx = outputxlsx.append( df, ignore_index=True)

print('最终 Excel 表现在在同一位置生成:')
outputxlsx.to_excel("C:/Users/amit_/Desktop/Output.xlsx", index=False)

输出

这将产生以下输出,即合并的 excel 文件将在同一位置生成 −


相关文章


有用资源