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

相关推荐
共享家95273 小时前
搭建 AI 聊天机器人:”我的人生我做主“
前端·javascript·css·python·pycharm·html·状态模式
Hgfdsaqwr4 小时前
Python在2024年的主要趋势与发展方向
jvm·数据库·python
一晌小贪欢4 小时前
Python 测试利器:使用 pytest 高效编写和管理单元测试
python·单元测试·pytest·python3·python测试
小文数模4 小时前
2026年美赛数学建模C题完整参考论文(含模型和代码)
python·数学建模·matlab
Halo_tjn5 小时前
基于封装的专项 知识点
java·前端·python·算法
Hgfdsaqwr5 小时前
掌握Python魔法方法(Magic Methods)
jvm·数据库·python
weixin_395448915 小时前
export_onnx.py_0130
pytorch·python·深度学习
s1hiyu5 小时前
使用Scrapy框架构建分布式爬虫
jvm·数据库·python
2301_763472465 小时前
使用Seaborn绘制统计图形:更美更简单
jvm·数据库·python
无垠的广袤6 小时前
【VisionFive 2 Lite 单板计算机】边缘AI视觉应用部署:缺陷检测
linux·人工智能·python·opencv·开发板