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

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

  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)。

当使用openpyxl和pandas库进行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库提供了更高级、更便捷的数据操作功能,适用于大规模数据处理和分析。可以根据具体的需求选择合适的库进行操作。

相关推荐
IT_Octopus4 小时前
【零基础入门 LLM 开发 · Day 13】:LangChain 的对话记忆——Message 对象版
人工智能·python·langchain
2603_965148114 小时前
社区与学习资源:从入门到精通的API选品学习路径
数据库·人工智能·python·学习·数据挖掘
CCblandy6 小时前
令牌桶在 0.9 倍负载超发 19%、固定窗口边界放行 20 个:四种限流算法同构实测
后端·python·算法·性能优化·架构
Cc.Y6 小时前
Java零基础入门:深入Java核心:文件IO与序列化全解
java·开发语言·python
拿本唠嗑AI研究7 小时前
本体工程实战指南:从建模到可维护的完整落地路径
java·人工智能·python·jena·ontology
Sadie_d7 小时前
Excel管理研发项目有哪些问题?什么情况要升级项目管理系统?
excel·项目管理·研发管理
Smoothcloud润云7 小时前
PyTorch推理服务模型热切换与失败回滚实战:降低版本更新中断
服务器·人工智能·pytorch·python·深度学习·gpu
jsjzsl27 小时前
递归自改进系统(RSI)的本质是自发对称破缺:智能爆炸有界—— AI研发切记盲目投入
人工智能·python·算法
2601_954811827 小时前
机器视觉教学套件选型指南:五维技术参数对比与课程体系评估
python·数码相机
小马不起床8 小时前
零基础玩转 FastAPI_05:后端课程模块
python·fastapi