讲解用Python处理Excel表格

我们今天来一起探索一下用Python怎么操作Excel文件。与word文件的操作库python-docx类似,Python也有专门的库为Excel文件的操作提供支持,这些库包括xlrd、xlwt、xlutils、openpyxl、xlsxwriter几种,其中我最喜欢用的是openpyxl,这也是本次讲解的主要内容。Excel文件大家也不陌生了,平时办公、学习中都会用到,大家回忆一下,你操作一个Excel文件是什么步骤呢?下图给出一个Excel文件,大家对照着想一想。

OK,我们一起捋一捋,首先要新建或打开一个Excel文件,然后选择某个工作表,也就是上图中的sheet,最后读取或设置单元格的值。与此相对应的,在openpyxl中,有三个概念:Workbooks,Sheets,Cells。Workbook就是一个打开的excel文件,即excel工作簿;Sheet是工作簿中的一张表,即工作表;Cell就是一个简单的单元格。openpyxl就是围绕着这三个概念进行的,不管读写都是“三板斧”:打开Workbook,定位Sheet,操作Cell。OK,了解了基本概念,我们实际操作看看吧!

首先,openpyxl并不是Python 3预装的库,需要我们手动安装,很简单打开命令行窗口输入pip install openpyxl就可以了。如下图所示,我的已经安装好了,所以输出信息可能和大家的会不一样。

安装好openpyxl后,通过import语句导入,再通过执行help方法,看看openpyxl库中包含哪些东西,不需要认识,有个印象就行。

里面有一些单词还是很熟悉的吧,比如cell单元格、chart图表、styles样式、workbook工作簿、worksheet工作表,除了用help方法,还可以使用dir方法来查看一个库的所有成员,我把我们一会儿可能会用到的一些已经标红了,大家在学习的过程中可以重点关注下。

下面给出操作Excel文件的一般步骤:

1、打开或者创建一个Excel:需要创建一个workbook对象,其中打开一个Excel所采用的是load_workbook方法,而创建一个Excel则直接通过实例化类workbook来完成。

2、获取一个工作表:需要先创建一个workbook对象,然后使用该对象的方法来得到一个worksheet对象。

3、如果要获取表中的数据,需要先得到一个worksheet对象,再从中获取代表单元格的Cell对象。

OK,我们在Python中实际操作看看吧,操作的对象是2018年度海南考试录入公务员的职位表,如下图所示。

下面给出一些基本操作示例,大家可照着写一下。

再秀一下操作,一下子读取指定行列的单元格,用到了iter_rows方法,表示在参数指定范围内按行迭代,如果想要按列迭代的话可以使用iter_cols方法。

上面的代码展示了如何操作一个已有的Excel文件,下面再看一下新建一个Excel的例子。

生成的Excel文件如下图所示:

OK,是不是感觉操作Excel很简单啊,那是因为你在这一段时间的Python学习中进步了,给自己一个赞!谢谢大家的关注与阅读,后面还有更多的编程美味,敬请享用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/470518.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【论文解读】TS2Vec: Towards Universal Representation of Time Series

TS2Vec: Towards Universal Representation of Time Series 摘要 这篇论文介绍了TS2Vec,这是一个用于在任意语义级别上学习时间序列表示的通用框架。与现有方法不同,TS2Vec以层次化方式在增强的上下文视图上执行对比学习,从而为每个时间戳提…

【c语言】字符串常见函数 下

🎈个人主页:甜美的江 🎉欢迎 👍点赞✍评论⭐收藏 🤗收录专栏:c语言 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步&a…

混合键合(Hybrid Bonding)工艺解读

随着半导体技术的持续演进,传统的二维芯片缩放规则受到物理极限的挑战,尤其是摩尔定律在微小化方面的推进速度放缓。为了继续保持计算性能和存储密度的增长趋势,业界开始转向三维集成电路设计与封装技术的研发。混合键合技术就是在这样的背景…

Git基础使用

Git 要想了解Git,首先需要我们了解一下VCS——版本控制系统(version control system) VCS 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。版本控制系统不仅可以应用于软件源代码的文本文件&a…

python调用智谱ai 大模型的完整步骤 (国内的 AI 大模型 对话)

要使用Python调用智谱AI的API进行异步调用,您需要遵循以下步骤: 1. **获取API密钥**: - 您需要从智谱AI平台获取一个API密钥(API Key),这个密钥将用于所有API请求的身份验证。 2. **安装…

机器学习网格搜索超参数优化实战(随机森林) ##4

文章目录 基于Kaggle电信用户流失案例数据(可在官网进行下载)数据预处理模块时序特征衍生第一轮网格搜索第二轮搜索第三轮搜索第四轮搜索第五轮搜索 基于Kaggle电信用户流失案例数据(可在官网进行下载) 导入库 # 基础数据科学运…

单片机学习笔记---LCD1602功能函数代码

目录 LCD1602.c 模拟写指令的时序 模拟写数据的时序 初始化 显示字符 显示字符串 显示数字 显示有符号的数字 显示16进制数字 显示二进制数 LCD1602.h main.c 上一篇讲了LCD1602的工作原理,这一节开始代码演示! 新创建工程:LCD1…

Java学习第十四节之多维数组和Arrays类讲解

多维数组 package array;public class ArrayDemo05 {public static void main(String[] args) {//[4][2] 面向对象/*1,2 array[0]2,3 array[1]3,4 array[2]4,5 array[3]*/int[][] array {{1,2},{2,3},{3,4},{4,5}};for (int i 0; i <array.length; i) {for (int…

MyBatis篇----第六篇

系列文章目录 文章目录 系列文章目录前言一、什么是 MyBatis 的接口绑定?有哪些实现方式?二、使用 MyBatis 的 mapper 接口调用时有哪些要求?三、Mapper 编写有哪几种方式?前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳…

Java实现课程案例资源库系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 管理员需求分析2.2 用户需求分析 三、系统设计3.1 业务流程设计3.1.1 管理员业务流程设计3.1.2 用户业务流程设计3.1.3 首页功能模块及业务流程分析3.1.4 案例资源中心功能模块及业务流程分析3.1.5 用户信息中心功能模块…

[GXYCTF2019]禁止套娃

进来发现只有这句话&#xff0c;习惯性访问一下flag.php&#xff0c;发现不是404&#xff0c;那就证明flag就在这了&#xff0c;接下来要想办法拿到flag.php的源码。 这道题是.git文件泄露网页源码&#xff0c;githack拿到index.php源码 这里观察到多次判断&#xff0c;首先要…

Python实现MACD指标计算:股票技术分析的利器系列(1)

Python实现MACD指标计算&#xff1a;股票技术分析的利器系列&#xff08;1&#xff09; 介绍核心代码&#xff1a;EMA核心代码&#xff1a;MACD200 次交易日的收盘价格完整代码最终运行代码的效果展示DIFDEAMACD 介绍 先看看官方介绍&#xff1a; MACD (平滑异同平均线&#x…