Python自动化办公之操作Excel文件
模块导入
import openpyxl
读取Excel文件
打开Excel文件
workbook = openpyxl.load_workbook("test.xlsx")
输出表单名字
# 输出工作簿中所有表单名字
print(workbook.sheetnames)
# 遍历所有表单并输出其名字
for sheet in workbook:
print(sheet.title)
创建表单
newSheet = workbook.create_sheet("newSheetName")
获取表单对象
# 根据表单名获取表单
sheet3 = workbook.get_sheet_by_name("Sheet3")
sheet4 = workbook["newSheetName"]
# 获取当前活跃的表单
worksheet = workbook.active
获取当前表单数据行列数
# 获取当前表单数据行数
row_count = worksheet.max_row
# 获取当前表单数据列数
row_count = worksheet.max_column
获取单元格对象
selectcell = worksheet["A1"]
selectcell = worksheet.cell(row=1, column=2) # 行列号从1开始
输出单元格信息
单元格所在的行、列
print(selectcell.row, selectcell.column)
单元格的坐标
print(selectcell.coordinate)
单元格的值
print(selectcell.value)
获取列对象
selectcol = worksheet["C"]
获取列对象中某一单元格
selectcell = selectcol["2"]
获取连续多列组成的对象
selectcols = worksheet["B:C"]
获取所有列组成的对象
allcol = worksheet.cols
获取行对象
selectrow = worksheet["2"]
获取行对象中某一单元格
selectcell = selectcol["C"]
获取连续多行组成的对象
selectcols = worksheet["1:4"]
获取所有行组成的对象
allrow = worksheet.rows
获取一定范围内的单元格组成的对象
cell_range = worksheet["A1:C3"]
遍历一定范围内的单元格
for row_range in cell_range: # 先行再列
for cell in row_range:
print(cell.value)
行的字母表示与数字换算
from openpyxl.utils import get_column_letter, column_index_from_string
print(get_column_letter(2))) # 2 => B
print(column_index_from_string("C")) # C => 3
编辑Excel文件
创建workbook对象
workbook = openpyxl.Workbook()
创建表单
workbook.create_sheet(index=1, title="第二张表")
删除表单
workbook.remove_sheet(workbook.get_sheet_by_name("Sheet3"))
获取当前活跃的表单
sheet = workbook.active
修改表单名称
sheet.title = "设置的表单名称"
修改单元格的值
sheet["A1"] = "New Value"
批量写入数据
方法一
import openpyxl
from openpyxl.utils import get_column_letter, column_index_from_string
workbook = openpyxl.Workbook()
ws1 = workbook.create_sheet("第一页")
for row in range(40):
ws1.append(range(17))
方法二
import openpyxl
from openpyxl.utils import get_column_letter, column_index_from_string
workbook = openpyxl.Workbook()
ws2 = workbook.create_sheet("第二页")
rows = [
["Number", "Batch1", "Batch2"],
[2,40,30],[3,50,25],
[4,30,30],[5,60,10]
]
for row in rows:
ws2.append(row)
方法三
import openpyxl
from openpyxl.utils import get_column_letter, column_index_from_string
workbook = openpyxl.Workbook()
ws3 = workbook.create_sheet("第三页")
for row in range(5,30):
for col in range(15,24):
ws3.cell(column=col, row=row, value=123)
修改完毕保存到文件
workbook.save("created.xlsx")
想进一步了解编程开发相关知识,与我一同成长进步,请关注我的公众号“松果仓库”,共同分享宅&程序员的各类资源,谢谢!!!
Python自动化办公之操作Excel文件的更多相关文章
- 用Python的pandas框架操作Excel文件中的数据教程
用Python的pandas框架操作Excel文件中的数据教程 本文的目的,是向您展示如何使用pandas 来执行一些常见的Excel任务.有些例子比较琐碎,但我觉得展示这些简单的东西与那些你可以在其 ...
- 记录python接口自动化测试--把操作excel文件的方法封装起来(第五目)
前面补充了如何来操作excel文件,这次把如何获取excel文件的sheet对象.行数.单元格数据的方法进行封装,方便后面调用 handle_excel.py# coding:utf-8 import ...
- Python使用xlwt模块 操作Excel文件
导出Excel文件 1. 使用xlwt模块 import xlwt import xlwt # 导入xlwt # 新建一个excel文件 file = xlwt.Workbook() # ...
- Python自动化办公:批量将文件按分类保存,文件再多,只需一秒钟解决
序言 (https://jq.qq.com/?_wv=1027&k=GmeRhIX0) 当我们电脑里面的文本或者或者文件夹太多了,有时候想找到自己想要的文件,只能通过去搜索文件名,要是名字忘记 ...
- python 操作Excel文件
1 安装xlrd.xlwt.xlutils cmd下输入: pip install xlrd #读取excel pip install xlwt #写入excel pi ...
- python第三方库——xlrd和xlwt操作Excel文件学习
python第三方库——xlrd和xlwt操作Excel文件学习 1安装: C:\Users\Lenovo>pip install xlwtCollecting xlwt Downloadin ...
- Python自动化办公知识点整理汇总
知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却 ...
- python3:操作excel文件
前提:自动化接口测试中,可以将用例放在excel中管理.结合实际情况讲解如何操作excel文件 1.安装xlrd:pip install xlrd 2.导入模块:import xlrd 3.打开Exc ...
- [转载]Java操作Excel文件的两种方案
微软在桌面系统上的成功,令我们不得不大量使用它的办公产品,如:Word,Excel.时至今日,它的源代码仍然不公开已封锁了我们的进一步应用和开发.在我们实际开发企业办公系统的过程中,常常有客户这样子要 ...
随机推荐
- 【原创】(九)Linux内存管理 - zoned page frame allocator - 4
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本: ...
- Spring Boot项目中使用Mockito
本文首发于个人网站:Spring Boot项目中使用Mockito Spring Boot可以和大部分流行的测试框架协同工作:通过Spring JUnit创建单元测试:生成测试数据初始化数据库用于测试 ...
- AB实验的高端玩法系列2 - 更敏感的AB实验, CUPED!
背景 AB实验可谓是互联网公司进行产品迭代增加用户粘性的大杀器.但人们对AB实验的应用往往只停留在开实验算P值,然后let it go...let it go ... 让我们把AB实验的结果简单的拆解 ...
- 基于SkyWalking的分布式跟踪系统 - 环境搭建
前面的几篇文章我们聊了基于Metrics的监控Prometheus,利用Prometheus和Grafana可以全方位监控你的服务器及应用的性能指标,在出现异常时利用Alertmanager告警及时通 ...
- SpringData-Redis发布订阅自动重连分析
SpringData-Redis发布订阅自动重连分析 RedisMessageListenerContainer 配置 @Bean @Autowired RedisMessageListenerCon ...
- Mysql数据库(七)触发器
一.MySQL触发器 触发器是由MySQL的基本命令事件来触发某种特定操作,这些基本的命令由INSERT.UPDATE.DELETE等事件来触发某些特定操作.满足触发器的触发条件时,数据库系统就会自动 ...
- C#关于private protected sealed Virtual/Override
Public:公开权限 Private:修饰类时类为程序集或者包含此类的类内部权限:修饰变量时只能类内部使用: Protected:修饰变量,只能继承类可以使用,对外(包括继承类的实例)无权限: Ab ...
- 解压zip文件
/// <summary> /// 执行压缩命令结果 /// </summary> public enum CompressResults { Success, SourceO ...
- 小白 Python 爬虫部署 Linux
前言 前面国庆节的时候写过一个简易的爬虫. <Python 简易爬虫实战> 还没看过的同学可以先看一下,这只爬虫主要用来爬取各个博客平台的阅读量等数据,一直以来都是每天晚上我自己手动在本地 ...
- spring cloud Ribbon的使用和实现原理
转载链接:https://blog.csdn.net/qq_20597727/article/details/82860521 简介 这篇文章主要介绍一下ribbon在程序中的基本使用,在这里是单独拿 ...