【Python基础】一文搞懂:Python 中 Excel 文件的写入与读取
文章目录
- 1 引言
- 2 使用 openpyxl
- 2.1 安装 openpyxl
- 2.2 写入 Excel 文件
- 2.3 读取 Excel 文件
- 3 使用 pandas
- 3.1 安装 pandas 和 openpyxl
- 3.2 写入 Excel 文件
- 3.3 读取 Excel 文件
- 4 实例演示
- 4.1 安装所需库
- 4.2 封装为excel_example.py脚本文件
- 5 注意事项
- 6 总结
1 引言
在现代办公自动化中,Excel 文件广泛应用于数据存储、分析和报告。Python 作为一个强大的编程语言,提供了多个库来处理 Excel 文件,其中最受欢迎的是 openpyxl 和 pandas。本文将深入介绍如何在 Python 中使用这些库来读写 Excel 文件。
2 使用 openpyxl
openpyxl 是一个 Python 库,用于读写 Excel 2010 及以上版本的 xlsx/xlsm/xltx/xltm 文件。
2.1 安装 openpyxl
pip install openpyxl
2.2 写入 Excel 文件
from openpyxl import Workbook# 创建工作簿
wb = Workbook()
ws = wb.active# 添加数据
data = [['Name', 'Age', 'City'],['Alice', 30, 'New York'],['Bob', 25, 'Los Angeles']
]for row in data:ws.append(row)# 保存到文件
wb.save("example.xlsx")
2.3 读取 Excel 文件
from openpyxl import load_workbook# 加载工作簿
wb = load_workbook("example.xlsx")
ws = wb.active# 读取数据
for row in ws.iter_rows(values_only=True):print(row)
3 使用 pandas
pandas 是 Python 数据分析的核心库,提供了简单易用的数据结构和数据分析工具。
3.1 安装 pandas 和 openpyxl
pip install pandas openpyxl
3.2 写入 Excel 文件
import pandas as pd# 数据
df = pd.DataFrame({'Name': ['Alice', 'Bob'],'Age': [30, 25],'City': ['New York', 'Los Angeles']
})# 写入 Excel 文件
df.to_excel("example.xlsx", index=False)
3.3 读取 Excel 文件
# 读取 Excel 文件
df = pd.read_excel("example.xlsx")# 显示数据
print(df)
4 实例演示
以下是一个 Python 示例,演示如何使用 pandas 和 openpyxl 库来读取和写入 Excel 文件。这个示例将包括两个主要部分:使用 pandas 进行简单的 Excel 文件读写操作,以及使用 openpyxl 进行更细粒度的操作。我们将这些功能封装在一个名为 excel_example.py 的 Python 文件中。
4.1 安装所需库
在运行此脚本之前,请确保已经安装了 pandas 和 openpyxl:
pip install pandas openpyxl
4.2 封装为excel_example.py脚本文件
import pandas as pd
from openpyxl import load_workbookdef write_excel_with_pandas(file_name, data):""" 使用 pandas 写入 Excel """df = pd.DataFrame(data)df.to_excel(file_name, index=False)def read_excel_with_pandas(file_name):""" 使用 pandas 读取 Excel """df = pd.read_excel(file_name)print(df)def read_excel_with_openpyxl(file_name):""" 使用 openpyxl 读取 Excel """workbook = load_workbook(filename=file_name)sheet = workbook.activefor row in sheet.iter_rows(values_only=True):print(row)def main():# 文件名file_name = 'example.xlsx'# 数据data = {'Name': ['Alice', 'Bob'],'Age': [30, 25],'City': ['New York', 'Los Angeles']}# 使用 pandas 写入 Excelwrite_excel_with_pandas(file_name, data)# 使用 pandas 读取 Excelprint("使用 pandas 读取 Excel:")read_excel_with_pandas(file_name)# 使用 openpyxl 读取 Excelprint("\n使用 openpyxl 读取 Excel:")read_excel_with_openpyxl(file_name)if __name__ == '__main__':main()
运行以上代码后控制台输出结果:
使用 pandas 读取 Excel:
Name Age City
0 Alice 30 New York
1 Bob 25 Los Angeles使用 openpyxl 读取 Excel:
(‘Name’, ‘Age’, ‘City’)
(‘Alice’, 30, ‘New York’)
(‘Bob’, 25, ‘Los Angeles’)
同时生成如下Excel文件:“example.xlsx”
在这个脚本中,我们定义了三个函数:write_excel_with_pandas 用于写入 Excel 文件,read_excel_with_pandas 和 read_excel_with_openpyxl 分别用于读取 Excel 文件。main 函数中整合了这些操作的流程。运行这个脚本将会创建一个名为 sample.xlsx 的文件,并在其中写入数据,然后使用两种不同的方法读取并打印出这些数据。
5 注意事项
- 当使用
openpyxl时,可以更加细致地控制 Excel 文件的每个方面,如样式、图表等。 pandas提供了更高级的数据处理能力,适合于复杂的数据分析任务。- 确保安装了最新版本的
openpyxl和pandas,以便使用最新的功能和修复。
6 总结
通过本文的介绍,您应该能够理解并开始在 Python 中使用 openpyxl 和 pandas 来处理 Excel 文件。无论是进行简单的数据记录还是复杂的数据分析,这些工具都将是您强大的助手。
希望这篇文章能帮助您理解和掌握 Python 中处理 Excel 文件的方法。如果您有任何疑问或建议,请在评论区留言,让我们共同进步!
作者:climber1121
链接:https://blog.csdn.net/climber1121
来源:CSDN
版权声明:本文为博主原创文章,转载请附上原文出处链接和本声明。
相关文章:
【Python基础】一文搞懂:Python 中 Excel 文件的写入与读取
文章目录 1 引言2 使用 openpyxl2.1 安装 openpyxl2.2 写入 Excel 文件2.3 读取 Excel 文件 3 使用 pandas3.1 安装 pandas 和 openpyxl3.2 写入 Excel 文件3.3 读取 Excel 文件 4 实例演示4.1 安装所需库4.2 封装为excel_example.py脚本文件 5 注意事项6 总结 1 引言 在现代办…...
二叉树题目:完全二叉树插入器
文章目录 题目标题和出处难度题目描述要求示例数据范围 解法思路和算法代码复杂度分析 题目 标题和出处 标题:完全二叉树插入器 出处:919. 完全二叉树插入器 难度 6 级 题目描述 要求 完全二叉树是每一层(除最后一层外)都…...
用MATLAB求最短路径(graphshortestpath)和求最小生成树(minspantree),代码演示
求最短路径(graphshortestpath),求最小生成树(minspantree) 文章目录 求最短路径(graphshortestpath),求最小生成树(minspantree)1、最短路径问题2、最小生成…...
用win系统搭建Minecraft世界服务器,MC开服教程,小白开服教程
雨云VPS用Windows系统搭建我的世界世界服务器,Minecraft开服教程,小白开服教程,MC 1.19.4版本服务器搭建教程。 此教程使用 Mohist 1.19.4 服务端,此服务端支持Forge模组和Bukkit/Spigot/Paper插件,如果需要开其他服务…...
MacOS安装Miniforge、Tensorflow、Jupyter Lab等(2024年最新)
大家好,我是邵奈一,一个不务正业的程序猿、正儿八经的斜杠青年。 1、世人称我为:被代码耽误的诗人、没天赋的书法家、五音不全的歌手、专业跑龙套演员、不合格的运动员… 2、这几年,我整理了很多IT技术相关的教程给大家࿰…...
iOS 应用上架指南:资料填写及提交审核
摘要 本文提供了iOS新站上架资料填写及提交审核的详细指南,包括创建应用、资料填写-综合、资料填写-IOS App和提交审核等步骤。通过本指南,您将了解到如何填写正确的资料,并顺利通过苹果公司的审核。 引言 在开发iOS应用后,将其…...
车速预测 | Matlab基于RBF径向基神经网络的车速预测模型(多步预测,尾巴图)
目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 车速预测 | Matlab基于RBF径向基神经网络的车速预测模型(多步预测,尾巴图) 程序设计 完整程序和数据获取方式:私信博主回复Matlab基于RBF径向基神经网络的车速预测模型…...
MySQL 5.7.35下载安装使用_忘记密码_远程授权
文章目录 MySQL 5.7.35下载安装使用_忘记密码_远程授权MySQL下载地址mysql安装点击安装,最好以管理员身份运行选择自定义安装选择64位勾选启动自定义产品执行点击同意点击下一步点击执行下一步配置数据库端口号设置登录密码,如果密码忘记,下面…...
openGauss学习笔记-194 openGauss 数据库运维-常见故障定位案例-分析查询语句长时间运行的问题
文章目录 openGauss学习笔记-194 openGauss 数据库运维-常见故障定位案例-分析查询语句长时间运行的问题194.1 分析查询语句长时间运行的问题194.1.1 问题现象194.1.2 原因分析194.1.3 处理办法 openGauss学习笔记-194 openGauss 数据库运维-常见故障定位案例-分析查询语句长时…...
GoLang:gRPC协议的介绍以及详细教程,从Protocol开始
目录 编辑 引言 一、安装相关Go语言库和相关工具 1. 安装Go 2. 安装Protocol Buffers Compiler 2.1 Windows 2.1.1 下载 2.1.2 解压 2.1.3 环境变量 2. macOS 3. Linux 4. 验证安装 3. 安装gRPC-Go 4. 安装Protocol Buffers的Go插件 二、定义服务 三、生成Go…...
LeetCode-2645. 构造有效字符串的最少插入数
给你一个字符串 word ,你可以向其中任何位置插入 “a”、“b” 或 “c” 任意次,返回使 word 有效需要插入的最少字母数。 如果字符串可以由 “abc” 串联多次得到,则认为该字符串有效 。 示例 1: 输入:word “b” …...
ssm+vue的城投公司企业人事管理系统设计与实现(有报告)。Javaee项目,ssm vue前后端分离项目。
演示视频: ssmvue的城投公司企业人事管理系统设计与实现(有报告)。Javaee项目,ssm vue前后端分离项目。 项目介绍: 采用M(model)V(view)C(controller&#x…...
nginx基础面试题以及配置文件解析和命令控制
目录 1、nginx是什么 2、nginx的特点 3、为什么中国大陆有:百度、京东、新浪、网易、腾讯、淘宝等这么多用户使用nginx 4、nginx 的内部技术架构 上一期我们配置安装了nginx接着讲一下nginx配置文件的解析和nginx 命令控制 感谢观看!希望能够帮助到…...
全自动网页生成系统网站源码重构版
源码优点: 所有模板经过精心审核与修改,完美兼容小屏手机大屏手机,以及各种平板端、电脑端和360浏览器、谷歌浏览器、火狐浏览器等等各大浏览器显示。 免费制作 为用户使用方便考虑,全自动网页制作系统无需繁琐的注册与登入,直…...
【算法每日一练]-动态规划 (保姆级教程 篇16) #纸带 #围栏木桩 #四柱河内塔
目录 今日知识点: 计算最长子序列的方案个数,类似最短路径个数问题 四柱河内塔问题:dp[i]min{ (p[i-k]f[k])dp[i-k] } 纸带 围栏木桩 四柱河内塔 纸带 思路: 我们先设置dp[i]表示从i到n的方案数。 那么减法操作中ÿ…...
Grounding 模型 + SAM 报错
引入 Grounding 目标检测模型串联 SAM 从而实现实例分割任务,目前支持 Grounding DINO 和 GLIP 参考教程 MMDetection-SAM 如果是 Grounding DINO 则安装如下依赖即可 cd playground pip install githttps://github.com/facebookresearch/segment-anything.git pip…...
linux 网络基础配置
将Linux主机接入到网络,需要配置网络相关设置一般包括如下内容: 主机名 iP/netmask (ip地址,网关) 路由:默认网关 网络连接状态 DNS服务器 (主DNS服务器 次DNS服务器 第三个DNS服务器) 一、…...
leetcode-相同的树
100. 相同的树 使用递归的方法 # Definition for a binary tree node. # class TreeNode: # def __init__(self, val0, leftNone, rightNone): # self.val val # self.left left # self.right right class Solution:def isSameTree(self, p: …...
Leetcode17-好数对的数目(1512)
1、题目 给你一个整数数组 nums 。 如果一组数字 (i,j) 满足 nums[i] nums[j] 且 i < j ,就可以认为这是一组 好数对 。 返回好数对的数目。 示例 1: 输入:nums [1,2,3,1,1,3] 输出:4 解释:有 4 组好数对&am…...
Ubuntu22.04开机左上角下划线闪烁不开机
按下CtrlAltF2,打开TTY系统,然后通过用户名和密码登录,随后使用 sudo apt --fix-broken install 根据提示排除错误信息,然后使用apt安装lightdm安装就行。 tips:当使用EasyConnect的时候,你可能参考了下面这篇文章知…...
【Java学习笔记】Arrays类
Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...
PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
工程地质软件市场:发展现状、趋势与策略建议
一、引言 在工程建设领域,准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具,正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...
Java多线程实现之Callable接口深度解析
Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...
页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
Nuxt.js 中的路由配置详解
Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...
selenium学习实战【Python爬虫】
selenium学习实战【Python爬虫】 文章目录 selenium学习实战【Python爬虫】一、声明二、学习目标三、安装依赖3.1 安装selenium库3.2 安装浏览器驱动3.2.1 查看Edge版本3.2.2 驱动安装 四、代码讲解4.1 配置浏览器4.2 加载更多4.3 寻找内容4.4 完整代码 五、报告文件爬取5.1 提…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...
以光量子为例,详解量子获取方式
光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学(silicon photonics)的光波导(optical waveguide)芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中,光既是波又是粒子。光子本…...
