You need to enable JavaScript to run this app. 如何将多个Excel文件分别读取为不同的Pandas DataFrame对象
优惠活动
大模型
产品
解决方案
定价
更多

如何将多个Excel文件分别读取为不同的Pandas DataFrame对象

批量读取Excel文件为Pandas DataFrame实现方案

原有代码问题

  • 定义了Excel存储路径变量path但未实际使用,glob.glob('*.xls')仅会检索当前脚本运行目录下的xls文件,不会检索你指定的目标目录
  • 存储DataFrame的容器df未预先初始化,直接赋值df[f]会触发变量未定义报错
  • 路径格式存在书写错误,Windows盘符后缺少反斜杠

修复后实现方案

推荐使用字典存储所有DataFrame,键为文件名、值为对应数据集,后续批量处理、单独调用都更方便:

import glob
import pandas as pd

# 修正路径格式,指向目标文件夹
path = r"C:\users\me\desktop\ExcelData"
# 匹配目标文件夹下所有xls格式文件
files = glob.glob(path + "/*.xls")
# 初始化字典作为存储容器
df_container = {}

for file_path in files:
    # 提取不带路径和后缀的文件名作为字典key,可根据需求自定义命名规则
    file_name = file_path.split("\\")[-1].rstrip(".xls")
    df_container[file_name] = pd.read_excel(file_path)

如果需要生成独立的DataFrame变量而非使用字典存储,可以通过全局变量动态生成:

import glob
import pandas as pd

path = r"C:\users\me\desktop\ExcelData"
files = glob.glob(path + "/*.xls")

for file_path in files:
    file_name = file_path.split("\\")[-1].rstrip(".xls")
    # 动态生成变量,文件名为sales.xls则对应变量名为df_sales
    globals()[f"df_{file_name}"] = pd.read_excel(file_path)

提示:优先使用字典存储方案,可避免全局变量污染,也更方便对所有数据集做统一批量操作。

内容的提问来源于stack exchange,提问作者user9003011

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.11 01:03:02