Python使用xlrd和xlwt实现自动化操作Excel
作者:醉蕤 发布时间:2021-08-24 10:54:19
标签:Python,xlrd,xlwt,自动化,操作,Excel
一、前言介绍
xlrd:可以对xlsx、xls、xlsm文件进行读操作且效率高。
xlwt:主要对xls文件进行写操作且效率高,但是不能执行xlsx文件。
xlrd
是用来从Excel中读写数据的,但通常只用它进行读操作,写操作会相对于专门写入的模块麻烦一些。
xlwt
只能对Excel进行写操作。xlwt和xlrd不光名字像,连很多函数和操作格式也是完全相同。
二、安装
在命令行或者终端中使用pip安装:
pip install Xlrd
pip install xlwt
三、xlrd常用操作
用xlrd进行读取比较方便,流程和手动操作Excel一样,打开工作簿(Workbook),选择工作表(sheets),然后操作单元格(cell)。
1、打开Excel
import xlrd
df = xlrd.open_workbook(name)
导入模块后使用
open_workbook()
函数来读取指定的一个工作簿对象。这里参数name是Excel文件名字,一般使用的是相对路径的名字。
2、查看工作簿中所有sheet
df.sheet_names()
读取文件,便可得到以列表形式嵌字符串的值。
3、选择一个工作表
table=df.sheets()[0]
table=df.sheet_by_index(0)
table=df.sheet_by_name('name')
第一行:获取第一个工作表,写法是根据内置的列表格式来选取的。
第二行:通过索引获取第一个工作表,这里的索引与
pandas
中DataFrame
的index
索引类似,只不过对象换成了工作表。第三行:通过表的名称选择工作表。
4、获取表格的行数、列数
row=table.nrows
col=table.ncols
这里不需要在函数后面加小括号
5、获取整行和整列的值
table.row_values(num1)
table.column_values(num2)
6、通过循环读取表格的所有行
for i in range(table.nrows):
print (table.row_values(i))
7、获取单元格的值
cell1=table.row(0)[0].value
cell1=table.cell(0,0).value
cell1=table.col(0)[0].value
第一行:获取单元格值的方式是通过调取指定行数据进行筛选。
第二行:是以二维的形式获取,即(第i行,第j列)形式。
第三行:与第一行类似是通过列索引调用。
四、xlwt常用操作
1、新建Excel文件
import xlwt
df2 = xlwt.Workbook()
2、新建工作表
table2=df2.add_sheet('name') #name是工作表的名称
3、写入数据到指定单元格
table2.write(0,0,'Python')
#前两个参数对应(第i行,第j列),代表的是单元格的位置。第三个参数是要写的值(可以是字符串、数字)
4、保存文件
df2.save('data2.xls')
PS:xlwt
仅支持.xls
的文件格式输出。
五、综合xlrd、xlwt读写Excel
1、读
import xlrd
# 1、打开工作本workbook
xlsx = xlrd.open_workbook(r'.\t1.xlsx')
# 2、打开需要操作的表sheet
table = xlsx.sheet_by_index(0)
# table = xlsx.sheet_by_name('t1')
# 3、读取指定单元格的数据
print(table.cell_value(1,1))
print(table.cell(1,1).value)
print(table.row(1)[1].value)
2、写
import xlwt
# 1、新建一个工作本
new_workbook = xlwt.Workbook()
# 2、为这个工作本中添加一个工作表
worksheet = new_workbook.add_sheet('new_test')
# 3、向指定单元格写入内容
worksheet.write(0,0,'nt')
# 4、保存
new_workbook.save('./nt.xls')
来源:https://blog.csdn.net/m0_63794226/article/details/126276740
0
投稿
猜你喜欢
- 目录一、Python执行外部命令1、subprocess模块简介2、subprocess模块的遍历函数3、subprocess模块的Pope
- 什么是pyscriptpyscript由来自 Anaconda 的团队开发,包括 Peter Wang、Fabio Pliger 和 Phi
- 本文实例为大家分享了python文件写入write()的操作的具体代码,供大家参考,具体内容如下filename = 'pragra
- 本文实例为大家分享了python批量处理图片的具体代码,供大家参考,具体内容如下公司的一个项目要求把所有4096x4096的图片全部转化成2
- 引言将对象的状态信息转换为可以存储或传输的形式的过程叫作序列化类似地从序列化后的数据转换成相对应的对象叫作 反序列化本文介绍 Python
- 深度遍历:原则:从上到下,从左到右逻辑(本质用递归):1)、找根节点2)、找根节点的左边3)、找根节点的右边class Node(objec
- 一、需求描述手上有大量外文文档(本案例以5份为例,分别命名为 test1.docx test2.docx 以此
- 一,粘包问题详情 1,只有TCP有粘包现象,UDP永远不会粘包你的程序实际上无权直接操作网卡的,你操作网卡都是通过操作系统给用户程序暴露出来
- 计算机视觉方面朋友都需要跟图像打交道,在pytorch中图像与我们平时在matlab中见到的图像数据格式有所不同。matlab中我们通常使用
- 这篇文章主要介绍了Python OrderedDict的使用案例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值
- 例如:文本abcaBcabCaBCabcaBCa,关键字bc,在不区分大小写的情况,一共有6个匹配项。 则在网页中显示的是abcaBcabC
- 在开始聊我在阿里四个月的网页推广设计之前,我想先来说说我对平面设计和网页设计的认识。它们之间的交集。它们都是集艺术创作、电脑技术和数字技术于
- 本文实例为大家分享了python学生管理系统的具体代码,供大家参考,具体内容如下类class Student: stuID = "
- 1、终极方法:条件注释<!--[if lte IE 6]> 这段文字仅显示在 IE6及IE6以下版本。 <![endif]
- 以前在使用Python的时候,都是使用root用户安装好的全局python,现在,因为root用户安装的Python版本太低,同时自己没有r
- 之前用小程序做项目,因为后台使用的java开发,一切顺利,但切换成django做RESTful API接口时,在登陆注册时一直出现问题,网上
- 整理总结一下python中最常用的一些时间戳和时间格式的转换第一部分:获取当前时间和10位13位时间戳import datetime, ti
- 在改进SQL Server 7.0系列所实现的安全机制的过程中,Microsoft建立了一种既灵活又强大的安全管理机制,它能够对用户访问SQ
- PyQuery库就是python中的一个解析库。作用十分强大,使用上也是相当的灵活,能够实现初始化字符串、初始化 HTML 文件、初始化请求
- python读取npy文件时,太大不能完全显示,其解决方法当用python读取npy文件时,会遇到npy文件太大,用print函数打印时不能