Python 实现Excel自动化办公(上)

在Python 中你要针对某个对象进行操作,是需要安装与其对应的第三方库的,这里对于Excel 也不例外,它也有对应的第三方库,即xlrd 库。

什么是xlrd库

Python 操作Excel 主要用到xlrd和xlwt这两个库,即xlrd是读Excel ,xlwt是写Excel 的库。今天主要讲讲xlrd这个库。

常用单元格中的数据类型

  1. empty(空的)

  2. string(text)

  3. number

  4. date

  5. boolean

  6. error

  7. blank(空白表格)

安装

首先来安装一下xlrd, 安装非常简单,一条命令即可搞定:
python -m pip install xlrd

不报错说明模块安装成功

代码演示

复制代码
import xlrdimport xlwtdata = xlrd.open_workbook("test.xls") #打开一个excel文件table=data.sheet_by_name("good")#通过sheet名查找good
#针对excel中sheet操作print('sheet_names:', data.sheet_names()) # 获取所有sheet名字print('sheet_number:', data.nsheets ) # 获取sheet数量print('sheet is load:',data.sheet_loaded(2)) #通过name or index来检查某个sheet是否导入完毕print('sheet_object:', data.sheets() ) # 获取所有sheet对象,返回一个xlrd.sheet.Sheet()对象列表print('By_name:', data.sheet_by_name("test")) # 通过sheet名查找,返回一个xlrd.sheet.Sheet()对象print('By_index:', data.sheet_by_index(1) ) # 通过索引查找,返回一个xlrd.sheet.Sheet()对象
#针对sheet的行的操作print("该sheet中的有效行数:",table.nrows) #获取该sheet中的有效行数print("该行对象组成的列表:",table.row(1)) #返回由该行中所有的单元格对象组成的列表print("该行对象组成的列表:",table.row_slice(1)) #返回由该行中所有的单元格对象组成的列表,与上面的效果一致print("该行数据类型组成的列表:",table.row_types(1)) #返回由该行中所有单元格的数据类型组成的列表print("该行数据组成的列表:",table.row_values(0)) #返回由该行中所有单元格的数据组成的列表print("该列的有效单元格长度:",table.row_len(1)) #返回该列的有效单元格长度
#针对sheet的列的操作print("该sheet中的有效列数:",table.ncols) #获取该sheet中的有效列数print("该列中所有的单元格对象组成的列表:",table.col(1)) #返回由该列中所有的单元格对象组成的列表print("该列中所有的单元格对象组成的列表:",table.col_slice(1)) #返回由该列中所有的单元格对象组成的列表,与上面的效果一致print("该列中所有单元格的数据类型组成的列表:",table.col_types(1)) #返回由该列中所有单元格的数据类型组成的列表print("该列中所有单元格的数据组成的列表:",table.col_values(1)) #返回由该列中所有单元格的数据组成的列表
#针对单元格的操作# #针对单元格的操作print("返回指定单元格对象:",table.cell(0,0))   #返回单元格对象print("返回指定单元格对象:",table.cell(0,0).value)   #返回单元格对象的值print("返回指定单元格对象的数据类型:",table.cell_type(1,1))    #返回单元格中的数据类型print("返回指定单元格对象的数据:",table.cell_value(0,0))   #返回单元格中的数据,等同于table.cell(0,0).value

输出结果展示

引用的Excel 数据格式如下:

总结:今天主要是分享了Python 如何来操作Excel 里面的sheet,row,col,cell 等Excel 里面的元素,有了这些基础我们就可以在后面做我们想要做的了,比如:api 自动化时需要从Excel 里面获取要组织的请求数据,或者是回写我们请求后的响应值等。

相关推荐
EricFRQ1 小时前
devops自动化容器化部署
运维·自动化·devops
老胖闲聊1 小时前
Python PyAutoGUI库【GUI 自动化库】深度解析与实战指南
python
梦想画家3 小时前
SQLMesh 测试自动化:提升数据工程效率
自动化·数据工程·sqlmesh
GeekABC3 小时前
FastAPI系列06:FastAPI响应(Response)
开发语言·python·fastapi·web
fen_fen4 小时前
Python3:Jupyter Notebook 安装和配置
ide·python·jupyter
float_六七4 小时前
Python语言基础知识详解:分支结构控制语句
python
声声codeGrandMaster4 小时前
django之优化分页功能(利用参数共存及封装来实现)
数据库·后端·python·django
Johny_Zhao5 小时前
OpenStack 全套搭建部署指南(基于 Kolla-Ansible)
linux·python·信息安全·云计算·openstack·shell·yum源·系统运维
27669582925 小时前
海关 瑞数 后缀分析 rs
java·python·rs·瑞数·海关·瑞数后缀·后缀生成
学c真好玩5 小时前
Django创建的应用目录详细解释以及如何操作数据库自动创建表
后端·python·django