Python解析excel——openpyxl
前言
前段时间的工作都是围绕着AWS的autoscaling展开的,写terraform,修改AWS的配置,然后用python写一个lambda。就是这段时间给了我一个可以学习学习python的机会。(本来自己就想学,但是工作一直没用到就搁置了)。
Python的寄出学完之后,我就想着用python写点什么,真正的应用一下,于是就开始尝试如何用python解析excel。
正文
代码可以直接查看https://github.com/luckypoison/pythonNote中的excelResolve.py
在excel的概念中最大单元是workbook,可以说它是整个excel的一个映射,然后在一个workbook中存在这多个sheet,每一个sheet中,每一个单元格就是一个cell,这就是我们可以得到的最小单元了。
由于我们使用的是openpyxl,所以我们需要先引一下这个包:
# 引入opnepyxl来解析excel import openpyxl as xl
我们可以这样获取workbook:
# excel_name 是文件的字符串,如果不指定路径,指的是当前路径 xl.load_workbook(excel_name)
我们可以这样获取sheet
# excel_workbook为刚刚拿到的workbook的实例,sheet_name为excel中sheet的名字,新建的情况下为“Sheet1” excel_workbook[sheet_name]
我们可以这样获取cell
# excel_sheet为刚刚获取到的sheet实例,cell_position为一个字符串(如果为第一行第一列,位置为a1) excel_sheet[cell_position]
获取cell中的值
excel_sheet[cell_position].value
修改cell中的值
excel_sheet[cell_position].value = 修改后的值 # 最后一定不要忘记save文件 excel_workbook.save('文件名')
Tips: 修改后要记得,保存一下文件,就相当于另存为了,我试过如果另存为的名字和原始文件的名字一样,原始文件不发生变化,所以保存文件要起另外一个名字。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
图解golang里面的读写锁实现与核心原理分析了解编程语言背后设计
基础筑基 读写锁的特点 读写锁区别与互斥锁的主要区别就是读锁之间是共享的,多个goroutine可以同时加读锁,但是写锁与写锁、写锁与读锁之间则是互斥的 写锁饥饿问题 因为读锁是共享的,所以如果当前已经有读锁,那后续goroutine继续加读锁正常情况下是可以加锁成功,但是如果一直有读锁进行加锁,那尝试加写锁的goroutine则可能会长期获取不到锁,这就是因为读锁而导致的写锁饥饿问题 基于高低位与等待队列的实现 在说golang之前介绍一种JAVA里面的实现,在JAVA中ReentrantReadWriteLock实现采用一个state的高低位来进行读写锁的计数,其中高16位存储读的计数,低16位存储写的计数,并配合一个AQS来实现排队等待机制,同时AQS中的每个waiter都会有一个status,用来标识自己的状态 golang的读写锁的实现 成员变量 结构体 type RWMutex struct { w Mutex // held if there are pending writers writerSem uint32 // 用于writer等待读完成排队的信号量 reade...
- 下一篇
阿里巴巴 29 个屌炸天的开源项目
云栖号:https://www.aliyun.com/#module-yedOfott8第一手的上云资讯,不同行业精选的上云企业案例库,基于众多成功案例萃取而成的最佳实践,助力您上云决策! 前言众所周知,阿里巴巴是 apache基金会成员、Linux基金会成员,同时是Xen顾问委员会成员。上述身份可见阿里在开源方面的重视程度,阿里通过开源贡献更多技术、分享更多理念。其开源的很多项目大受欢迎,今日就来盘点阿里 29 个开源项目,你用过几个,哪个最好用,欢迎在留言区告诉我。1. 分布式应用服务开发的一站式解决方案 Spring Cloud Alibaba Spring Cloud Alibaba 致力于提供分布式应用服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。 依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里分布式应用解决方案,通过阿里中间件来迅速搭建分布式应用系统。 地址:https://github...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Hadoop3单机部署,实现最简伪集群
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- 设置Eclipse缩进为4个空格,增强代码规范
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装Nodejs环境
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS关闭SELinux安全模块
- SpringBoot2更换Tomcat为Jetty,小型站点的福音