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

相关推荐
deephub9 分钟前
Tokenformer:基于参数标记化的高效可扩展Transformer架构
人工智能·python·深度学习·架构·transformer
Open-AI26 分钟前
Python如何判断一个数是几位数
python
极客代码29 分钟前
【Python TensorFlow】入门到精通
开发语言·人工智能·python·深度学习·tensorflow
义小深32 分钟前
TensorFlow|咖啡豆识别
人工智能·python·tensorflow
疯一样的码农36 分钟前
Python 正则表达式(RegEx)
开发语言·python·正则表达式
一名技术极客1 小时前
Vue2 doc、excel、pdf、ppt、txt、图片以及视频等在线预览
pdf·powerpoint·excel·文件在线预览
用余生去守护2 小时前
【反射率】-- Lab 转换(excel)
excel
进击的六角龙2 小时前
Python中处理Excel的基本概念(如工作簿、工作表等)
开发语言·python·excel
TracyDemo2 小时前
excel功能
excel
lc寒曦2 小时前
【VBA实战】用Excel制作排序算法动画
排序算法·excel·vba