当前位置: 首页 > news >正文

详解Python对Excel处理

Excel是一种常见的电子表格文件格式,广泛用于数据记录和处理。Python提供了多个第三方库,可以方便地对Excel文件进行读写、数据操作和处理。本文将介绍如何使用Python对Excel文件进行处理,并提供相应的代码示例和详细说明。

一、安装第三方库

在开始之前,我们需要安装一些Python第三方库,用于对Excel文件进行处理。以下是常用的库:

  • pandas:用于数据分析和处理,支持读写Excel文件。
  • openpyxl:用于读写Excel文件。
  • xlrd:用于读取Excel文件。
  • xlwt:用于写入Excel文件。

可以使用pip命令进行安装:

pip install pandas openpyxl xlrd xlwt

安装完成后,我们可以开始使用这些库来处理Excel文件。

二、读取Excel文件

首先,我们需要导入相应的库。使用以下代码导入pandas和openpyxl:

​
import pandas as pd
import openpyxl

2.1读取Excel文件到DataFrame

使用pandas库可以将Excel文件读取到DataFrame对象中,方便进行数据分析和处理。以下是一个示例代码:

​
# 读取Excel文件
data = pd.read_excel("data.xlsx")
​
# 打印DataFrame
print(data)

这段代码将data.xlsx文件读取到data变量中,并将其打印输出。你可以根据实际文件名和路径进行修改。

2.2读取指定Sheet的Excel文件

如果Excel文件中包含多个Sheet,你可以通过指定Sheet名称或索引来读取指定的Sheet。以下是一个示例代码:

​
# 读取指定Sheet的Excel文件
data = pd.read_excel("data.xlsx", sheet_name="Sheet1")
​
# 打印DataFrame
print(data)

这段代码将data.xlsx文件中名为"Sheet1"的Sheet读取到data变量中,并将其打印输出。你可以根据实际情况修改Sheet的名称或使用Sheet的索引。

三、写入Excel文件

除了读取Excel文件,我们还可以使用Python将数据写入Excel文件。以下是一个示例代码:

​
# 创建数据
data = {'Name': ['Alice', 'Bob', 'Charlie'],'Age': [25, 30, 35],'City': ['New York', 'London', 'Paris']
}
​
# 创建DataFrame
df = pd.DataFrame(data)
​
# 写入Excel文件
df.to_excel("output.xlsx", index=False)

这段代码首先创建了一个包含姓名、年龄和城市的数据字典。然后,通过pd.DataFrame()创建DataFrame对象df。最后,使用to_excel()方法将DataFrame写入到output.xlsx文件中。index=False表示不将索引写入文件。

四、修改Excel文件

除了读取和写入,我们还可以使用Python修改Excel文件中的数据、添加新的Sheet等。以下是一个示例代码:

​
# 打开Excel文件
wb = openpyxl.load_workbook("data.xlsx")
​
# 获取指定Sheet
sheet = wb["Sheet1"]
​
# 修改单元格数据
sheet["A1"] = "Updated Value"
​
# 添加新的Sheet
new_sheet = wb.create_sheet("Sheet2")
​
# 保存修改后的Excel文件
wb.save("data_modified.xlsx")

这段代码首先使用openpyxl.load_workbook()方法打开data.xlsx文件,返回一个Workbook对象wb。然后,通过指定Sheet的名称或索引获取指定的Sheet,这里我们获取名为"Sheet1"的Sheet。接下来,我们可以修改Sheet中的单元格数据,例如将"A1"单元格的值修改为"Updated Value"。然后,使用create_sheet()方法添加一个新的Sheet,这里我们创建名为"Sheet2"的Sheet。最后,使用wb.save()方法保存修改后的Excel文件。

五、完整代码示例

​
import pandas as pd
import openpyxl
​
# 读取Excel文件
data = pd.read_excel("data.xlsx")
​
# 打印DataFrame
print(data)
​
# 创建数据
data = {'Name': ['Alice', 'Bob', 'Charlie'],'Age': [25, 30, 35],'City': ['New York', 'London', 'Paris']
}
​
# 创建DataFrame
df = pd.DataFrame(data)
​
# 写入Excel文件
df.to_excel("output.xlsx", index=False)
​
# 打开Excel文件
wb = openpyxl.load_workbook("data.xlsx")
​
# 获取指定Sheet
sheet = wb["Sheet1"]
​
# 修改单元格数据
sheet["A1"] = "Updated Value"
​
# 添加新的Sheet
new_sheet = wb.create_sheet("Sheet2")
​
# 保存修改后的Excel文件
wb.save("data_modified.xlsx")

六、结语

通过pandas和openpyxl等第三方库,我们可以方便地读取、写入和修改Excel文件。本文介绍了Python对Excel文件处理的基本方法,并提供了相应的代码示例和详细说明。你可以根据实际需求,进一步探索这些库的其他功能和特性。Excel文件的处理能力将为你的Python应用程序带来更多可能性,帮助你更好地处理和分析数据。

如果你对Python感兴趣,想要学习python,这里给大家分享一份Python全套学习资料,都是我自己学习时整理的,希望可以帮到你,一起加油!

😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓
Python全套学习资料

在这里插入图片描述

1️⃣零基础入门

① 学习路线

对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~
在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述

2️⃣国内外Python书籍、文档

① 文档和书籍资料

在这里插入图片描述

3️⃣Python工具包+项目源码合集

①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

4️⃣Python面试题

我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

5️⃣Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述

上述所有资料 ⚡️ ,朋友们如果有需要的,可以扫描下方👇👇👇二维码免费领取🆓
在这里插入图片描述

相关文章:

详解Python对Excel处理

Excel是一种常见的电子表格文件格式,广泛用于数据记录和处理。Python提供了多个第三方库,可以方便地对Excel文件进行读写、数据操作和处理。本文将介绍如何使用Python对Excel文件进行处理,并提供相应的代码示例和详细说明。 一、安装第三方库…...

docker compose搭建渗透测试vulstudy靶场示例

前言 渗透测试(Penetration test)即网络安全工程师/安全测试工程师/渗透测试工程师通过模拟黑客,在合法授权范围内,通过信息搜集、漏洞挖掘、权限提升等行为,对目标对象进行安全测试(或攻击)&am…...

Python基础教程:强大的Pandas数据分析库

Pandas是一个基于 NumPy 的非常强大的开源数据处理库,它提供了高效、灵活和丰富的数据结构和数据分析工具,当涉及到数据分析和处理时,使得数据清洗、转换、分析和可视化变得更加简单和高效。本文中,我们将学习如何使用Pandas来处理…...

【深入剖析K8s】容器技术基础(一):从进程开始说起

容器其实是一种特殊的进程而已。 可执行镜像 为了能够让这些代码正常运行’我们往往还要给它提供数据’比如我们这个加法程序所需要的输人文件这些数据加上代码本身的二进制文件放在磁盘上’就是我们平常所说的一个程序,也叫代码的可执行镜像(executablejmage&…...

Mysql使用周期性计划任务定时备份,发现备份的文件都是空的?为什么?如何解决?

👨‍🎓博主简介 🏅云计算领域优质创作者   🏅华为云开发者社区专家博主   🏅阿里云开发者社区专家博主 💊交流社区:运维交流社区 欢迎大家的加入! 🐋 希望大家多多支…...

算法leetcode|90. 子集 II(rust重拳出击)

文章目录 90. 子集 II:样例 1:样例 2:提示: 分析:题解:rust:go:c:python:java: 90. 子集 II: 给你一个整数数组 nums ,其…...

git 泄露

得到flag有两种方法&#xff1a; 1、版本比对&#xff1a;git diff 用法&#xff1a;git diff <分支名1> <分支名2> 2、版本回退&#xff1a;git reset 用法&#xff1a;git reset --hard <分支名> python2 GitHack.py http://www.example.com/.git/ g…...

Elasticsearch知识

目录 Elasticsearch逻辑设计和物理设计 逻辑设计物理设计Elasticsearch原理 倒排索引文档的分析过程保存文档搜索文档写数据的底层原理 数据刷新&#xff08;fresh&#xff09;事务日志的写入ES在大数据量下的性能优化 文件系统缓存优化数据预热文档&#xff08;Document&…...

极智芯 | 解读国产AI算力天数智芯产品矩阵

欢迎关注我的公众号 [极智视界],获取我的更多经验分享 大家好,我是极智视界,本文分享一下 解读国产AI算力天数智芯产品矩阵。 邀您加入我的知识星球「极智视界」,星球内有超多好玩的项目实战源码和资源下载,链接:https://t.zsxq.com/0aiNxERDq 天数智芯属于国产 GPGPU 阵…...

使用 OpenCV 发现圆角矩形的轮廓

OpenCV - 如何找到圆角矩形的矩形轮廓? 问题: 在图像中,我试图找到矩形对象的圆角轮廓。然而,我对两者的尝试 HoughLinesP 并 findContours 没有产生预期的结果。 我的目标是找到一个类似于以下形状的矩形: 。 代码: import cv2 import matplotlib.pyplot as plt…...

vscode项目推送到git

1、打开项目文件 打开文件后点击vs code左侧工具栏中第三个源代码管理图标&#xff0c;点击初始化仓库&#xff0c;此时会创建一个本地仓库会检查该项目中的文件变更 2、创建远程仓库 点击克隆/下载&#xff0c;复制HTTPS地址 3、添加远程地址 1&#xff09;图形化操作 2…...

COMP2121 Discrete Mathematics

COMP2121 Discrete Mathematics 需要可WeChat: zh6-86...

【随笔记录】VMware搭建python开发环境

Vmware虚拟机总是连接不到网络。 环境为&#xff1a;笔记本WLAN 解决方法。 1.直接使用VMware 编辑->虚拟网络编辑器->恢复默认设置。 2.取消网卡的IP的dhcp获取&#xff0c;改为static。网关为提供IP的主机的网络IP&#xff08;NAT模式&#xff09; 3.windows打开共享网…...

基于C++实现水仙花数

1、水仙花数的连营 1.1、水仙花数 在学习程序设计课程时&#xff0c;大多数读者一定采用循环结构编写过求解水仙花数的程序。 【实例 1-1】水仙花数 一个三位整数&#xff08;100&#xff5e;999&#xff09;&#xff0c;若各位数的立方和等于该数自身&#xff0c;则称其为“…...

关于一个类中引用两外一个类中的变量和方法,一个技巧可以提高开发效率

import static com.xx.xx.util.ext.xx.toJson; import static com.xx.xx.util.ext.smf.Cert.certMgrClient; 第一个引用一个方法&#xff0c;第二个引用一个变量&#xff0c; 引用后就可以直接通过变量名或者方法名就行使用&#xff0c;很方便&#xff0c;不要通过class.方式调…...

算法笔记:OPTICS 聚类

1 基本介绍 OPTICS(Ordering points to identify the clustering structure)是一基于密度的聚类算法 OPTICS算法是DBSCAN的改进版本 在DBCSAN算法中需要输入两个参数&#xff1a; ϵ 和 MinPts &#xff0c;选择不同的参数会导致最终聚类的结果千差万别&#xff0c;因此DBCSAN…...

SSRF漏洞防御:黑白名单的编写

文章目录 SSRF漏洞防御:黑白名单的编写黑名单的制作白名单的制作 SSRF漏洞防御:黑白名单的编写 以pikachu靶场中SSRF(crul)为例我们可以看到未做任何防御 我们查看源代码 黑名单的制作 思路: 什么内容不能访问 构造代码 $xyarray("file" > "",&q…...

想要对网站进行安全监测,安全SCDN效果怎么样?

随着互联网的迅速成长&#xff0c;各种网站出现的越来越多&#xff0c;个人网站、企业网站等&#xff0c;同时网站竞争也越来越强。随着用户对网站需求增多&#xff0c;对网站的安全也愈发受到人们的重视。那么我们日常网站运营中&#xff0c;有需要对网站进行安全监控&#xf…...

操作符extends的作用是什么?

在TypeScript中&#xff0c;extends关键字用于创建类之间的继承关系。它允许一个类&#xff08;子类&#xff09;继承另一个类&#xff08;父类&#xff09;的属性和方法&#xff0c;并可以在子类中添加新的属性和方法或者修改继承自父类的属性和方法。 extends的作用是实现类…...

跟着chatgpt一起学|1.spark入门之MLLib

chatgpt在这一章表现的不好&#xff0c;所以我主要用它来帮我翻译文章提炼信息 1.前言 首先找到spark官网里关于MLLib的链接 spark内一共有2种支持机器学习的包&#xff0c; 一种是spark.ml,基于DataFrame的&#xff0c;也是目前主流的 另一种则是spark.mllib,是基于RDD的…...

PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建

制造业采购供应链管理是企业运营的核心环节&#xff0c;供应链协同管理在供应链上下游企业之间建立紧密的合作关系&#xff0c;通过信息共享、资源整合、业务协同等方式&#xff0c;实现供应链的全面管理和优化&#xff0c;提高供应链的效率和透明度&#xff0c;降低供应链的成…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略

本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装&#xff1b;只需暴露 19530&#xff08;gRPC&#xff09;与 9091&#xff08;HTTP/WebUI&#xff09;两个端口&#xff0c;即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...

工程地质软件市场:发展现状、趋势与策略建议

一、引言 在工程建设领域&#xff0c;准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具&#xff0c;正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...

《通信之道——从微积分到 5G》读书总结

第1章 绪 论 1.1 这是一本什么样的书 通信技术&#xff0c;说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号&#xff08;调制&#xff09; 把信息从信号中抽取出来&am…...

iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈

在日常iOS开发过程中&#xff0c;性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期&#xff0c;开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发&#xff0c;但背后往往隐藏着系统资源调度不当…...

【电力电子】基于STM32F103C8T6单片机双极性SPWM逆变(硬件篇)

本项目是基于 STM32F103C8T6 微控制器的 SPWM(正弦脉宽调制)电源模块,能够生成可调频率和幅值的正弦波交流电源输出。该项目适用于逆变器、UPS电源、变频器等应用场景。 供电电源 输入电压采集 上图为本设计的电源电路,图中 D1 为二极管, 其目的是防止正负极电源反接, …...

算法打卡第18天

从中序与后序遍历序列构造二叉树 (力扣106题) 给定两个整数数组 inorder 和 postorder &#xff0c;其中 inorder 是二叉树的中序遍历&#xff0c; postorder 是同一棵树的后序遍历&#xff0c;请你构造并返回这颗 二叉树 。 示例 1: 输入&#xff1a;inorder [9,3,15,20,7…...

OCR MLLM Evaluation

为什么需要评测体系&#xff1f;——背景与矛盾 ​​ 能干的事&#xff1a;​​ 看清楚发票、身份证上的字&#xff08;准确率>90%&#xff09;&#xff0c;速度飞快&#xff08;眨眼间完成&#xff09;。​​干不了的事&#xff1a;​​ 碰到复杂表格&#xff08;合并单元…...

AD学习(3)

1 PCB封装元素组成及简单的PCB封装创建 封装的组成部分&#xff1a; &#xff08;1&#xff09;PCB焊盘&#xff1a;表层的铜 &#xff0c;top层的铜 &#xff08;2&#xff09;管脚序号&#xff1a;用来关联原理图中的管脚的序号&#xff0c;原理图的序号需要和PCB封装一一…...

React核心概念:State是什么?如何用useState管理组件自己的数据?

系列回顾&#xff1a; 在上一篇《React入门第一步》中&#xff0c;我们已经成功创建并运行了第一个React项目。我们学会了用Vite初始化项目&#xff0c;并修改了App.jsx组件&#xff0c;让页面显示出我们想要的文字。但是&#xff0c;那个页面是“死”的&#xff0c;它只是静态…...