Python中使用openpyxl和pandas库操作 Excel 表格

在Python中,可以使用多种库来操作Excel表格,其中最常用的是openpyxlpandas库。下面我将详细解释这两个库的使用方法:

  1. openpyxl库

    • 安装库:使用pip install openpyxl命令安装openpyxl库。
    • 导入库:在Python脚本中,使用import openpyxl导入openpyxl库。
    • 打开Excel文件:使用openpyxl.load_workbook()函数打开Excel文件,例如:workbook = openpyxl.load_workbook('example.xlsx')
    • 选择工作表:通过工作表名称或索引选择要操作的工作表,例如:worksheet = workbook['Sheet1']worksheet = workbook.worksheets[0]
    • 读取单元格数据:使用worksheet.cell(row, column).value方法读取指定单元格的数据,例如:data = worksheet.cell(1, 1).value
    • 写入单元格数据:使用worksheet.cell(row, column).value方法写入指定单元格的数据,例如:worksheet.cell(1, 1).value = 'Hello'
    • 保存Excel文件:使用workbook.save()方法保存对Excel文件的修改,例如:workbook.save('example.xlsx')
  2. pandas库

    • 安装库:使用pip install pandas命令安装pandas库。
    • 导入库:在Python脚本中,使用import pandas导入pandas库。
    • 读取Excel文件:使用pandas.read_excel()函数读取Excel文件,例如:dataframe = pandas.read_excel('example.xlsx')
    • 数据操作:使用pandas提供的丰富功能进行数据操作,例如筛选、排序、分组、聚合等。
    • 写入Excel文件:使用dataframe.to_excel()函数将DataFrame数据写入Excel文件,例如:dataframe.to_excel('output.xlsx', index=False)

当使用openpyxlpandas库进行Excel表格操作时,下面是一些示例代码:

使用openpyxl库示例

python 复制代码
import openpyxl

# 打开Excel文件
workbook = openpyxl.load_workbook('example.xlsx')

# 选择工作表
worksheet = workbook['Sheet1']

# 读取单元格数据
data = worksheet.cell(row=1, column=1).value
print(data)  # 输出第一个单元格的数据

# 写入单元格数据
worksheet.cell(row=1, column=2).value = 'World'

# 保存Excel文件
workbook.save('example.xlsx')

上述示例代码使用openpyxl库打开名为example.xlsx的Excel文件,选择名为Sheet1的工作表。然后,它读取第一个单元格的数据并将其打印出来。接下来,它将字符串'World'写入第一行的第二个单元格。最后,使用workbook.save()方法保存对Excel文件的修改。

使用pandas库示例

python 复制代码
import pandas as pd

# 读取Excel文件
dataframe = pd.read_excel('example.xlsx')

# 打印表格数据
print(dataframe)

# 数据操作示例,计算列的和
sum_column = dataframe['Column1'].sum()
print(f"Sum of Column1: {sum_column}")

# 写入Excel文件
dataframe.to_excel('output.xlsx', index=False)

上述示例代码使用pandas库读取名为example.xlsx的Excel文件,并将其存储在DataFrame对象中。然后,它打印出整个表格的数据,并对列Column1进行求和操作,并将结果打印出来。最后,使用to_excel()函数将DataFrame数据写入名为output.xlsx的Excel文件中,参数index=False表示不包含索引列。


通过这两个库,你可以使用Python读取、写入、修改和处理Excel表格中的数据。openpyxl库提供了更底层的操作,适用于对Excel文件的低级控制,而pandas库提供了更高级、更便捷的数据操作功能,适用于大规模数据处理和分析。可以根据具体的需求选择合适的库进行操作。

相关推荐
凡尘——雨落凡尘8 小时前
Python列表索引越界IndexError问题深度解析与解决办法
python·indexerror·list index out of range
郝同学今天有进步吗9 小时前
构建 LangGraph Code Review Agent(七):实现规则匹配、Finding Guardrails 与 Markdown 报告
python·ai·fastapi·code review
xuhe29 小时前
一劳永逸!解决 AutoDL 系统盘(30GB)爆满与 pip 缓存迁移
linux·python·ai·jupyter
CodexDave10 小时前
Python 自动化接单实战(一):把 CSV 需求做成配置驱动解析器
java·python·自动化·json·数据清洗·python自动化·csv处理
m沐沐10 小时前
【深度学习】循环神经网络RNN——结构、原理与长期依赖问题解析
人工智能·pytorch·python·rnn·深度学习·算法·机器学习
风吹心凉10 小时前
python3基础2026.7.28
开发语言·python
曲无忆10 小时前
LLMs赋能依赖类型证明自动化
python
一次旅行10 小时前
act本地预跑GitHub Actions:Python项目完整CI/CD流水线实战
python·ci/cd·github
玉鸯11 小时前
RAG 全链路调优指南:从 Chunking 到 Reranker
python·llm·agent
淼澄研学11 小时前
Python开发AI应用实战:从环境配置到RAG部署的5个核心技术栈
开发语言·人工智能·python