首页 > 编程语言 >Python读写xlsx文件详解

Python读写xlsx文件详解

时间:2024-09-02 15:25:47浏览次数:12  
标签:xlsx sheet openpyxl 文件 Python 读写 cell workbook

Openpyxl介绍

在数据处理和分析的过程中,Excel文件由于其直观的表格形式以及易操作的特点,被广泛应用于各个行业和领域。而Python作为一种强大的编程语言,自然也提供了多种处理Excel文件的库。其中,openpyxl库就是专门用于读写.xlsx文件的Python库。本文将详细介绍如何使用openpyxl库来读写xlsx文件。

一、安装openpyxl库

在使用openpyxl库之前,首先需要确保已经安装了这个库。可以使用pip来安装:

pip install openpyxl

二、读取xlsx文件

加载工作簿

使用openpyxl.load_workbook()函数来加载一个已经存在的xlsx文件:

from openpyxl import load_workbook 

   

workbook = load_workbook('example.xlsx')

 

获取工作表

一个Excel文件可以包含多个工作表(Sheet),通过workbook.sheetnames可以获取所有工作表的名称列表,通过workbook[sheet_name]或workbook.active可以获取对应的工作表对象。

sheet_names = workbook.sheetnames  # 获取所有工作表名称 

sheet = workbook['Sheet1']  # 获取名为'Sheet1'的工作表 

# 或者使用active属性获取活动工作表 

active_sheet = workbook.active

 

读取单元格数据

通过工作表的cell()方法或直接使用单元格坐标,可以读取单元格的数据。

# 使用cell()方法 

cell_value = sheet.cell(row=1, column=1).value  # 读取第一行第一列的数据 

   

# 使用单元格坐标 

cell_value = sheet['A1'].value  # 同样读取第一行第一列的数据

 

# 读取整行或整列数据 

row_values = [cell.value for cell in sheet[1]]  # 第一行数据 

column_values = [sheet[f'A{i}'].value for i in range(1, sheet.max_row + 1)]  # A列数据 

 

遍历工作表数据

如果需要遍历整个工作表的数据,可以使用iter_rows()或iter_cols()方法。

for row in sheet.iter_rows(values_only=True): 

    print(row)  # 打印每一行的数据

 

三、写入xlsx文件

创建工作簿和工作表

使用openpyxl.Workbook()可以创建一个新的工作簿,并默认创建一个活动工作表。

from openpyxl import Workbook 

   

workbook = Workbook() 

sheet = workbook.active

 

写入单元数据

与读取单元格数据类似,可以使用cell()方法或直接使用单元格坐标来写入数据。

sheet['A1'] = 'Hello'  # 在第一行第一列写入'Hello' 

sheet.cell(row=2, column=2, value='World')  # 在第二行第二列写入'World'

 

保存工作簿

使用workbook.save()方法将修改后的工作簿保存到文件。

workbook.save('output.xlsx')  # 将工作簿保存为output.xlsx文件

 

四、注意事项

(1)在读取和写入xlsx文件时,注意文件的路径和名称是否正确。

(2)如果需要处理大量数据,建议使用pandas库来处理Excel文件,它提供了更强大和灵活的数据处理能力。

(3)openpyxl库主要用于处理.xlsx格式的文件,如果需要处理.xls格式的文件,可以使用xlrd和xlwt库。

标签:xlsx,sheet,openpyxl,文件,Python,读写,cell,workbook
From: https://www.cnblogs.com/yeyuzhuanjia/p/18392781

相关文章

  • Python语言 Google学术搜索 相关文章数
    使用Python语言,搜索在Google学术中,发表的SCI文章的数量;(用来判断自己所研究课题,潜在同类文章数量;)工程目录结构:项目目录结构:importsysimporttimefromseleniumimportwebdriverfromselenium.webdriver.chrome.optionsimportOptionsimportreimportwarningsfroms......
  • 74. 文件读写
    文件读写头文件#inlcude<fstream>写文件ofstreamofs(文件路径,打开方式ios::out)判断文件是否打开成功ofs.is_openofs<<“…”关闭文件ofs.close();读文件ifstreamifs(文件路径,打开方式ios::in)判断文件是否打开成功ofs.is_open利用4种方式对文件进......
  • 2024年华为OD机试E卷- Boss的收入-(Java&c++&Python)
    题目描述:一个XX产品行销总公司,只有一个b0ss,其有若千一级分销,一级分销又有若干二级分销,每个分错只有唯一的上级分销。规定,每个月,下级分销需要将自己的总收入(自已的+下级上交的)每满100元上交15元给自己的上级现给出一组分销的关系,和每个分销的收入,请找出boss并计算出这个boss......
  • 45. 文件的顺序读写
    1按照字符读写文件fgetc、fputc1.1.写文件#include<stdio.h>intfputc(intch,FILE*stream);功能:将ch转换为unsignedchar后写入stream指定的文件中参数:ch:需要写入文件的字符stream:文件指针返回值:成功:成功写入文件的字符失败:返回-1charbuf[]="MynameisTao.";int......
  • python+uniapp微信小程序 个性化网上商城购物商铺系统 3rc1k
    目录前言功能介绍技术栈系统截图核心代码系统设计操作可行性可行性论证详细视频演示个人心得/源码获取个人心得源码获取前言......
  • python微信小程序的网上图书商城书籍销售系统jn44t
    本论文的内容是关于书籍销售系统的设计与实现,主要内容不仅包括了系统的分析和设计还对几个主要模块进行详细阐述与分析。此书籍销售系统分为管理员操作和用户操作。用户的操作主要是可以在网页上浏览到首页,书籍信息,书籍资讯,购物车,我的等信息。管理员的操作,管理员登录后台进行操......
  • 用Python实现时间序列模型实战——Day 8: 季节性ARIMA模型 (SARIMA)
    一、学习内容1.SARIMA模型的定义与公式推导SARIMA模型:SARIMA模型是扩展了ARIMA模型的一种方法,全称为季节性自回归积分滑动平均模型(SeasonalAutoRegressiveIntegratedMovingAverage)。它结合了ARIMA模型的非季节性部分和季节性成分,用于处理具有季节性模式的时间序......
  • 【华为OD机试真题E卷 Python语言】494、猜字谜 | 机试真题+思路参考+代码解析(E卷复用)
    文章目录一、题目......
  • I2C通信中,使用FIFO时的读写时序
    在I2C通信中,使用FIFO(First-InFirst-Out)缓冲区可以显著提高数据传输的效率和可靠性。当使用FIFO时,读写时序会有一些特定的要求和优化,以确保数据传输的正确性和高效性。下面详细介绍使用FIFO时的读写时序。读写时序的基本原则在使用I2CFIFO时,读写时序需要考虑以下几个方面:初......
  • 一个练习项目,好玩的bbs-python-cherrypy
    代码:importcherrypyimportMySQLdbimportjsonimporthashlibimportrandomimportmathimportosfromdatetimeimportdatetimeclassDateEncoder(json.JSONEncoder):defdefault(self,obj):ifisinstance(obj,datetime):returnobj......