Python实现批量提取Excel数据

 更新时间:2024年12月17日 15:33:42   作者:Sitin涛哥  
在数据处理和分析的过程中,Excel 是一种广泛使用的数据存储格式,本文将详细介绍如何使用 pandas、openpyxl 和 xlrd 三种库来批量提取 Excel 数据,并提供相应的示例代码,需要的可以参考下

在数据处理和分析的过程中,Excel 是一种广泛使用的数据存储格式。使用 Python 可以高效地从多个 Excel 文件中提取数据,进行汇总和分析。本文将详细介绍如何使用 pandas、openpyxl 和 xlrd 三种库来批量提取 Excel 数据,并提供相应的示例代码。

使用 pandas 批量提取 Excel 数据

pandas 是一个强大的数据分析库,它提供了直接读取和处理 Excel 文件的功能。

1. 安装 pandas

首先,确保已安装 pandas 和 openpyxl:

pip install pandas openpyxl

2. 读取单个 Excel 文件

import pandas as pd

# 读取 Excel 文件
df = pd.read_excel('data.xlsx')

# 显示前几行数据
print(df.head())

3. 批量读取多个 Excel 文件

假设有多个 Excel 文件存放在一个文件夹中,文件名格式为 data_1.xlsx, data_2.xlsx,以此类推。

import os

# 存放 Excel 文件的文件夹路径
folder_path = 'path_to_folder'

# 获取所有 Excel 文件路径
file_list = [os.path.join(folder_path, f) for f in os.listdir(folder_path) if f.endswith('.xlsx')]

# 初始化一个空的 DataFrame
all_data = pd.DataFrame()

# 逐个读取并合并
for file in file_list:
    df = pd.read_excel(file)
    all_data = all_data.append(df, ignore_index=True)

# 显示合并后的数据
print(all_data.head())

使用 openpyxl 批量提取 Excel 数据

openpyxl 是一个专门处理 Excel 文件的库,适用于处理 .xlsx 格式的文件。

1. 安装 openpyxl

pip install openpyxl

2. 读取单个 Excel 文件

from openpyxl import load_workbook

# 加载 Excel 文件
wb = load_workbook('data.xlsx')

# 选择活动工作表
ws = wb.active

# 读取所有数据
data = []
for row in ws.iter_rows(values_only=True):
    data.append(row)

# 打印数据
for row in data:
    print(row)

3. 批量读取多个 Excel 文件

import os
from openpyxl import load_workbook

# 存放 Excel 文件的文件夹路径
folder_path = 'path_to_folder'

# 获取所有 Excel 文件路径
file_list = [os.path.join(folder_path, f) for f in os.listdir(folder_path) if f.endswith('.xlsx')]

# 初始化一个空的列表
all_data = []

# 逐个读取并合并
for file in file_list:
    wb = load_workbook(file)
    ws = wb.active
    for row in ws.iter_rows(values_only=True):
        all_data.append(row)

# 打印合并后的数据
for row in all_data:
    print(row)

使用 xlrd 批量提取 Excel 数据

xlrd 是一个用于读取 Excel 文件的库,适用于 .xls 和 .xlsx 格式的文件。

1. 安装 xlrd

pip install xlrd

2. 读取单个 Excel 文件

import xlrd

# 打开 Excel 文件
workbook = xlrd.open_workbook('data.xls')

# 选择工作表
sheet = workbook.sheet_by_index(0)

# 读取所有数据
data = []
for row_idx in range(sheet.nrows):
    row = sheet.row_values(row_idx)
    data.append(row)

# 打印数据
for row in data:
    print(row)

3. 批量读取多个 Excel 文件

import os
import xlrd

# 存放 Excel 文件的文件夹路径
folder_path = 'path_to_folder'

# 获取所有 Excel 文件路径
file_list = [os.path.join(folder_path, f) for f in os.listdir(folder_path) if f.endswith('.xls') or f.endswith('.xlsx')]

# 初始化一个空的列表
all_data = []

# 逐个读取并合并
for file in file_list:
    workbook = xlrd.open_workbook(file)
    sheet = workbook.sheet_by_index(0)
    for row_idx in range(sheet.nrows):
        row = sheet.row_values(row_idx)
        all_data.append(row)

# 打印合并后的数据
for row in all_data:
    print(row)

总结

本文详细介绍了如何使用 pandas、openpyxl 和 xlrd 三种库批量提取 Excel 数据,并提供了相应的示例代码。通过这些方法,可以高效地处理多个 Excel 文件,提高数据处理的效率。希望这些内容能够帮助大家在实际开发中更好地处理 Excel 数据。

到此这篇关于Python实现批量提取Excel数据的文章就介绍到这了,更多相关Python批量提取Excel数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • numpy增加维度、删除维度的方法

    numpy增加维度、删除维度的方法

    本文主要介绍了numpy增加维度、删除维度的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • Python中zip函数如何使用

    Python中zip函数如何使用

    在本篇文章里小编给大家分享的是关于Python中的zip函数用法,需要的朋友们可以学习参考下。
    2020-06-06
  • python中opencv实现图片文本倾斜校正

    python中opencv实现图片文本倾斜校正

    图片有的时候需要矫正,本文主要介绍了python中opencv实现图片文本倾斜校正,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-06-06
  • 手把手带你了解Python数据分析--matplotlib

    手把手带你了解Python数据分析--matplotlib

    这篇文章主要介绍了Python实现matplotlib显示中文的方法,结合实例形式详细总结分析了Python使用matplotlib库绘图时显示中文的相关操作技巧与注意事项,需要的朋友可以参考下
    2021-08-08
  • Python查找两个有序列表中位数的方法【基于归并算法】

    Python查找两个有序列表中位数的方法【基于归并算法】

    这篇文章主要介绍了Python查找两个有序列表中位数的方法,结合实例形式分析了Python基于归并算法遍历、计算有序列表相关操作技巧,需要的朋友可以参考下
    2018-04-04
  • python对excel文档去重及求和的实例

    python对excel文档去重及求和的实例

    下面小编就为大家分享一篇python对excel文档去重及求和的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • Python 虚拟空间的使用代码详解

    Python 虚拟空间的使用代码详解

    这篇文章主要介绍了Python 虚拟空间的使用,本文通过示例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-06-06
  • 简单了解Python3里的一些新特性

    简单了解Python3里的一些新特性

    这篇文章主要介绍了简单了解Python3里的一些新特性,给大家总结一下Python3一些新的更方便的特性!希望你们看完后也能高效率的编写代码,需要的朋友可以参考下
    2019-07-07
  • pytest测试框架+allure超详细教程

    pytest测试框架+allure超详细教程

    这篇文章主要介绍了pytest测试框架+allure超详细教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-11-11
  • Python爬虫实例_城市公交网络站点数据的爬取方法

    Python爬虫实例_城市公交网络站点数据的爬取方法

    下面小编就为大家分享一篇Python爬虫实例_城市公交网络站点数据的爬取方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01

最新评论