Python Excel 处理模块 : OpenPyXL
OpenPyXL模块使用方法
以下是介绍OpenPyXL的基本使用,不涉及样式和合并单元格的跨行操作
一般来说,对于大名鼎鼎的xlrd,xlwt和xlutils三个模块,Excel操作有3个基本状态
已有Excel表,只需要读取(xlrd)
没有Excel表,只需要创建,并且只是写入数据(xlwt)
有Excel表,需要读取,又需要写入(以xlutils为中介的xlrd和xlwt运用)
我一开始接触就是它们3个,但是在我是应用中,觉得它们有点局限性,即使是有xlutils将xlrd和xlwt融合后.
我当时想读取一个表里面的一个sheet,然后处理数据,并新建一个sheet输出,而且为了防止一些可能的意外,导致要第二次运行程序,重写新表数据,所以还要进行新建表重复判断删除.
很遗憾的是它们3个混合是无法进行删除的,虽然意外可能不怎么会发生,但是我调试代码的时候,每次都要打开Excel文件删除sheet,贼烦的
不多废话了,安装也很简单: pip install openpyxl 即可。注意的是Openpyxl模块是仅支持XLSX格式的Excel表格,XLS表格是无法进行操作的。
使用方法在代码里面以多行注释: ''' 表示
import openpyxl
# 导入openpyxl模块
def ExcelOperate(path):
# Window 路径替换 因为.save(path)是需要用"/"路径的
path=path.replace('\\','/')
# 这里我只分两种情况:有Excel表和无Excel表的情况:
# 第一种情况:有Excel表
# 加载已有的Excel表格
Book=openpyxl.load_workbook(path)
# 得到第1个Sheet的名字,并用名字获取Sheet对象
Sheet = Book[Book.sheetnames[0]]
# 遍历整个Sheet有效行(Sheet.iter_rows()就能获取当前Sheet全部有效行)
for row in Sheet.iter_rows():
# 获取到单行的全部内容,使用下标来获取某行的单元格,再使用value方法读取单元格内容。
print(row[1].value)
# 修改内容。行为1,列为2的单元格内容改为:测试
Sheet.cell(row=1, column=2, value="测试")
# 保存覆盖原有文件
Book.save(path)
'''
openpyxl.load_workbook() 加载Excel文档
Book[name] 获取名为name的sheet,
Book.sheetnames() 这个是获取Book的所有sheet名,以list的形式返回
Sheet.iter_rows() 把sheet里全部内容以行的形式返回
Sheet.rows 直接遍历行需要转list或tuple后以下标来读取(外加.value)
Sheet.cell(row,column,value) 修改指定行列的单元格内容
注意:get系列的方法已经是弃用了的
如果使用弃用方法并不会报错,但是会在命令行提示使用新的方法
(例如:get_sheet_names(),执行会提示:Deprecated: Use wb.sheetnames)
'''
Python Excel 处理模块 : OpenPyXL的更多相关文章
- python制作简单excel统计报表2之操作excel的模块openpyxl简单用法
python制作简单excel统计报表2之操作excel的模块openpyxl简单用法 # coding=utf-8 from openpyxl import Workbook, load_workb ...
- Python excel 库:Openpyxl xlrd 对比 介绍
打算用python做一个写mtk camera driver的自动化工具. 模板选用标准库里面string -> Template 即可 但要重定义替换字符,稍后说明 配置文件纠结几天:cfg, ...
- [Python]Excel编程示例教程(openpyxl)
1 前言(Preface) 博文背景:论文实验中有一大堆数据集需要观测其数据特征,通过人体肉眼,难以直观感受,故而准备通过生成Excel,可视化其评测数据. We know: Excel便于可视化分析 ...
- python 模块openpyxl读excel文件
使用openpyxl模块来读取excel.要注意openpyxl读不再支持旧的xls格式. 先看一下操作前的excel是什么样子吧.对了,现在只支持xlsx格式的excel读取 我现在想在第三行插入3 ...
- python使用xlrd模块读写Excel文件的方法
本文实例讲述了python使用xlrd模块读写Excel文件的方法.分享给大家供大家参考.具体如下: 一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi ...
- python处理Excel - xlrd xlwr openpyxl
python处理Excel - xlrd xlwr openpyxl 1 xlrd和xlwt Todo: 使用xlrd和xlwt读写Excel文件的方法和示例代码,待续... 参考链接: Creati ...
- Python - excel 详解
安装 pip install xlrd # 读xlspip install xlwt # 写xlspip install xlutils # 改写xls 读取 Excel ...
- python操作excel----openpyxl模块
openpyxl模块支持.xls和.xlsx格式的excel创建,但是只支持.xlsx格式的读取操作,不支持.xls的读取(可以使用xlrd模块来读取,写入操作也可使用xlwt模块),也可使用pand ...
- python之loggin模块与第三方模块
目录 logging模块详解 第三方模块 openpyxl模块 logging模块详解 主要组成部分 logger对象,用于产生日志 # 第一步,创建logger对象 logger = logging ...
- python常见的模块
Python内置模块名称 功能简介 详细解释/使用示例 os 和操作系统相关 os.path — Common pathname manipulations sys 和系统相关 sys — Syste ...
随机推荐
- AlertManager企业微信报警,时间是UTC时间,错8个小时的两种解决办法
第一种 {{ (.StartsAt.Add 28800e9).Format "2020-01-02 15:04:05" }} 或者是 {{ ($alert.StartsAt.Add ...
- MySQL之pt-query-digest分析慢查询日志的详情介绍
一.简介 pt-query-digest是用于分析mysql慢查询的一个工具,它可以分析binlog.General log.slowlog,也可以通过SHOWPROCESSLIST或者通过tcpdu ...
- v-infinite-scroll无限滚动
v-infinite-scroll="loadMore"表示回调函数是loadMore infinite-scroll-disabled="busy"表示由变量 ...
- vue3的Async Components异步组件
前言: 当我们的项目达到一定的规模时,对于某些组件来说,我们并不希望一开始全部加载,而是需要的时候进行加载:这样的做得目的可以很好的提高用户体验. 传统方式引入组件如下,这样会一次先加载所以组件 先在 ...
- Hbase创建表参数说明
Hbase创建表操作及参数说明 1.创建命名空间 create_namespace 'test' 2.创建user表,列族:info create 'test:user', 'info' 3.查看表结 ...
- Linux 文件操作接口
目录 Linux 文件操作接口 C语言文件操作接口 C语言文件描述 fopen() r模式打开文件 w模式打开文件 a模式打开文件 其他模式类似 fclose() fwrite() fread() 系 ...
- 都卷Java,你看看你得学多少技术栈才能工作!
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言:授业解惑 我知道,你不知道的还有很多! 你了解计算机要从哪里开始学习吗?你清楚为了能 ...
- python实现多接口翻译软件
本实验用pyqt5做了一个小软件,里面使用了市面上主流的6种翻译软件接口:谷歌.百度.有道.金山词霸.腾讯.必应,界面如图所示: 以下是程序代码: import time,sys,os,hashlib ...
- 2022icpc新疆省赛
菜鸡第一次打icpc 记录一下历程 习惯#define int long long 以下皆是按照我认为的难易顺序排序 K. 看题意大概就是说求从L加到R 1 ios::sync_with_stdio( ...
- Java8中那些方便又实用的Map函数
原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处. 简介 java8之后,常用的Map接口中添加了一些非常实用的函数,可以大大简化一些特定场景的代码编写,提升代码可读性,一 ...