首页 > 编程语言 >Python处理Excel表格的终极指南

Python处理Excel表格的终极指南

时间:2024-01-24 18:31:55浏览次数:46  
标签:文件 sheet Python Excel file workbook path 终极

案例学Python(进阶篇)源代码.zip   链接:https://pan.quark.cn/s/c00aefe52fdc

案例学Python(基础篇)源代码.zip  链接:https://pan.quark.cn/s/15c0b553b6b8


引言

Excel表格在数据处理和日常办公中扮演着不可或缺的角色。本文将详细介绍如何使用Python中的openpyxl库来处理Excel文件,内容涵盖读取、写入和修改Excel文件的各个方面。

安装openpyxl库

在开始之前,请确保已经安装了openpyxl库,它是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库。如果尚未安装,可以通过以下命令进行安装:

pip install openpyxl

读取Excel文件

首先,我们来看看如何读取Excel中的数据。

from openpyxl import load_workbook

def read_excel(file_path):
    # 加载现有的Excel文件
    workbook = load_workbook(filename=file_path)

    # 选择活动中的工作表
    sheet = workbook.active

    # 遍历所有行
    for row in sheet.iter_rows(values_only=True):
        print(row)

# 调用函数,输出Excel文件内容
read_excel('example.xlsx')

在这个例子中,我们使用了load_workbook函数来加载Excel文件,并通过active属性获取活动工作表。iter_rows方法用于迭代工作表中的每一行数据。

写入Excel文件

接下来,我们学习如何向Excel文件中写入数据。

from openpyxl import Workbook

def write_excel(file_path):
    # 创建一个新的工作簿
    workbook = Workbook()
    sheet = workbook.active

    # 写入数据
    sheet['A1'] = 'Hello'
    sheet['B1'] = 'World!'

    # 保存文件
    workbook.save(filename=file_path)

# 调用函数,写入数据到Excel文件
write_excel('example.xlsx')

Workbook类用于创建一个新的工作簿,我们可以像操作字典一样通过单元格坐标来写入数据,最后通过save方法保存文件。

修改Excel文件

如果想要修改已有的Excel文件,我们可以这样做:

def update_excel(file_path):
    # 加载现有的Excel文件
    workbook = load_workbook(filename=file_path)
    sheet = workbook.active

    # 修改数据
    sheet['A2'] = 'Goodbye'
    sheet['B2'] = 'World!'

    # 保存文件
    workbook.save(filename=file_path)

# 调用函数,修改Excel文件
update_excel('example.xlsx')

修改Excel文件的过程与写入类似,不同之处在于首先需要加载现有的文件,而不是创建一个新的工作簿。

使用函数和公式

openpyxl还支持向单元格写入函数。

def write_formula(file_path):
    # 加载现有的Excel文件
    workbook = load_workbook(filename=file_path)
    sheet = workbook.active

    # 向单元格写入公式
    sheet['A3'] = '=SUM(1, 2, 3)'
    sheet['A4'] = '=AVERAGE(A1:A3)'

    # 保存文件
    workbook.save(filename=file_path)

# 调用函数,写入公式到Excel文件
write_formula('example.xlsx')

这个例子向单元格写入了求和和平均值的公式。

总结

本文介绍了如何使用Python的openpyxl库处理Excel文件。我们展示了如何读取、写入、修改数据,以及如何使用Excel函数。openpyxl库功能丰富,本文只是介绍了一些基础用法,更高级的功能如样式调整、图表生成、以及多工作簿操作等,可以在阅读官方文档后进行探索。

标签:文件,sheet,Python,Excel,file,workbook,path,终极
From: https://blog.51cto.com/u_15288375/9401027

相关文章

  • python之内置函数
    内置函数                    1.absdefabs(*args,**kwargs):#realsignatureunknown"""Returntheabsolutevalueoftheargument."""pass翻译:返回参数的绝对值1#!/usr/bin/python2print(abs(-2))#绝对值View......
  • 使用SM.MS做MarkDown图床(Python脚本)
    缘起曾经写过一篇使用博客园做MarkDown图床的文章,好像也帮助到了很多小伙伴;从那时起,我也是一直把博客园当图床来用的,挺惭愧。一方面,白嫖博客园,而博客园的现状也不太好;另一方面,免费总是有风险的,以前有些文章里的图片链接是语雀或者Gitee的,但是现在这些图片都挂掉了。我想,是时......
  • python 面向对象专题(23):基础(14)类对象、实例对象、类属性、实例属性、类方法、实例方法
    1简易理解(快速理解)类对象:定义的类就是类对象实例对象:类对象实例化后就是实例对象类属性:定义在init外部的变量实例属性:定义在__init__内部的带有self.的变量类方法:定义在类对象中且被@classmethod装饰的方法就是类方法实例方法:定义在类对象中,且......
  • 用Python实现高效数据记录!Web自动化技术助你告别重复劳动!
    测试管理班是专门面向测试与质量管理人员的一门课程,通过提升从业人员的团队管理、项目管理、绩效管理、沟通管理等方面的能力,使测试管理人员可以更好的带领团队、项目以及公司获得更快的成长。提供1v1私教指导,BAT级别的测试管理大咖量身打造职业规划。简介关键数据记录是We......
  • Python多任务协程:编写高性能应用的秘密武器
    测试管理班是专门面向测试与质量管理人员的一门课程,通过提升从业人员的团队管理、项目管理、绩效管理、沟通管理等方面的能力,使测试管理人员可以更好的带领团队、项目以及公司获得更快的成长。提供1v1私教指导,BAT级别的测试管理大咖量身打造职业规划。多任务协程编程协程,又......
  • Python多任务协程:编写高性能应用的秘密武器!
    多任务协程编程协程,又称微线程,纤程。英文名Coroutine。协程也是一种轻量级的多任务编程技术,它可以在同一个线程中实现多个任务的切换和调度。协程通过任务的暂停和恢复,避免了线程切换的开销并减少了锁的使用。协程常用于异步编程场景,比如网络编程和IO密集型任务。最大的优势就是协......
  • 点燃你的Python技能:剖析闭包与装饰器的魔力
    闭包与装饰器函数引用讲解闭包之前,需要理解一个概念,Python中定义的函数,也可以像变量一样,将一个函数名,赋值给另一个变量名,赋值后,此变量名就可以做为该函数的一个别名使用,进行调用函数,此功能在讲解列表操作的sort()方法时使用过,sort()方法的key参数传入的就是一个函数名。defsho......
  • 用Python实现高效数据记录!Web自动化技术助你告别重复劳动!
    自动化关键数据记录简介关键数据记录是Web自动化测试中的关键部分,它们提供了关于系统行为和执行过程的详细信息,有助于验证用例的正确性,排查问题和确保应用程序的质量。行为日志行为日志是一种用于记录系统或应用程序的操作和事件的技术。它的目的是为了跟踪和记录应用程序的执行......
  • Python多任务协程:编写高性能应用的秘密武器
    多任务协程编程协程,又称微线程,纤程。英文名Coroutine。协程也是一种轻量级的多任务编程技术,它可以在同一个线程中实现多个任务的切换和调度。协程通过任务的暂停和恢复,避免了线程切换的开销并减少了锁的使用。协程常用于异步编程场景,比如网络编程和IO密集型任务。最大的优势就是协......
  • 数据挖掘||利用SQL Server 2012或者Excel 2013采用聚类和时序挖掘模型和算法,对自行车
    1.实验要求 利用SQLServer2012或者Excel2013(二者选择其一即可)进行数据挖掘实验,采用聚类和时序挖掘模型和算法,可以对附件中给定的excel数据进行聚类和时序挖掘实验,也可以采用自己采集的数据(如采用自选请说明数据来源)。 2.实验环境 操作系统:windows11;软件:Excel2019;SQLServer......