首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

[教程]掌握Python轻松导入Excel:一招搞定文件夹内所有工作表,告别重复操作!

发布于 2025-06-28 03:31:04
0
690

在Python中处理Excel文件时,经常需要导入多个工作表。手动导入每个工作表既耗时又容易出错。本文将介绍一种使用Python库pandas和openpyxl的方法,轻松导入文件夹内所有工作表,提高...

在Python中处理Excel文件时,经常需要导入多个工作表。手动导入每个工作表既耗时又容易出错。本文将介绍一种使用Python库pandasopenpyxl的方法,轻松导入文件夹内所有工作表,提高工作效率。

准备工作

在开始之前,请确保已经安装了以下Python库:

pip install pandas openpyxl

导入所有工作表

以下是一个示例代码,展示如何导入指定文件夹内所有Excel文件中的所有工作表:

import os
import pandas as pd
def import_all_sheets(folder_path): # 获取文件夹内所有Excel文件 excel_files = [f for f in os.listdir(folder_path) if f.endswith('.xlsx') or f.endswith('.xls')] # 创建一个字典来存储所有工作表的数据 all_sheets_data = {} # 遍历所有Excel文件 for file in excel_files: # 构建完整的文件路径 file_path = os.path.join(folder_path, file) # 使用pandas读取Excel文件 xls = pd.ExcelFile(file_path) # 遍历所有工作表 for sheet_name in xls.sheet_names: # 读取工作表数据 data = pd.read_excel(xls, sheet_name=sheet_name) # 将工作表数据存储在字典中 all_sheets_data[sheet_name] = data return all_sheets_data
# 指定文件夹路径
folder_path = 'path_to_your_folder'
# 调用函数并打印结果
sheets_data = import_all_sheets(folder_path)
for sheet_name, data in sheets_data.items(): print(f"工作表:{sheet_name}") print(data) print("\n" + "-"*40 + "\n")

代码说明

  1. 首先,我们使用os.listdir()函数获取指定文件夹内所有文件和文件夹的名称。
  2. 然后,我们筛选出所有以.xlsx.xls结尾的文件,即Excel文件。
  3. 对于每个Excel文件,我们使用pandas.ExcelFile()类创建一个ExcelFile对象,它可以读取Excel文件中的所有工作表。
  4. 使用xls.sheet_names获取所有工作表的名称,然后遍历这些工作表。
  5. 使用pd.read_excel()函数读取每个工作表的数据,并将其存储在字典all_sheets_data中。
  6. 最后,我们打印出所有工作表的数据。

总结

通过以上方法,您可以轻松地导入文件夹内所有Excel文件中的所有工作表,避免了手动导入的繁琐和错误。这种方法在处理大量数据时尤其有用,可以大大提高工作效率。

评论
一个月内的热帖推荐
csdn大佬
Lv.1普通用户

452398

帖子

22

小组

841

积分

赞助商广告
站长交流