Python使用xlrd和xlwt实现自动化操作Excel

作者:醉蕤 时间:2021-08-24 10:54:19 

一、前言介绍

xlrd:可以对xlsx、xls、xlsm文件进行读操作且效率高。

xlwt:主要对xls文件进行写操作且效率高,但是不能执行xlsx文件。

xlrd是用来从Excel中读写数据的,但通常只用它进行读操作,写操作会相对于专门写入的模块麻烦一些。

xlwt只能对Excel进行写操作。xlwt和xlrd不光名字像,连很多函数和操作格式也是完全相同。

二、安装

在命令行或者终端中使用pip安装:

pip install Xlrd
pip install xlwt

Python使用xlrd和xlwt实现自动化操作Excel

Python使用xlrd和xlwt实现自动化操作Excel

三、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')

第一行:获取第一个工作表,写法是根据内置的列表格式来选取的。

第二行:通过索引获取第一个工作表,这里的索引与pandasDataFrameindex索引类似,只不过对象换成了工作表。

第三行:通过表的名称选择工作表。

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

标签:Python,xlrd,xlwt,自动化,操作,Excel
0
投稿

猜你喜欢

  • jQuery打造动态渐变按钮

    2010-05-10 20:21:00
  • Python基础篇之字符串方法总结

    2022-11-25 11:42:36
  • python各种语言间时间的转化实现代码

    2022-06-27 14:54:28
  • python中内置库csv的使用及说明

    2022-02-22 07:31:54
  • Python一句代码实现找出所有水仙花数的方法

    2021-10-09 08:10:44
  • python将音频进行变速的操作方法

    2023-10-05 19:04:34
  • 兼容IE和FF的收藏本站、设为首页代码

    2009-01-07 14:14:00
  • Python实现并行抓取整站40万条房价数据(可更换抓取城市)

    2021-09-24 10:56:43
  • PyTorch中Tensor的数据类型和运算的使用

    2023-01-04 14:53:21
  • python基础之reverse和reversed函数的介绍及使用

    2022-10-19 19:12:18
  • Python在centos7.6上安装python3.9的详细教程(默认python版本为2.7.5)

    2022-05-09 18:58:43
  • 基于numpy实现逻辑回归

    2023-06-21 10:04:25
  • 解决python递归函数及递归次数受到限制的问题

    2023-12-01 01:49:35
  • python中Requests发送json格式的post请求方法

    2021-05-24 10:09:45
  • 使用Python编写基于DHT协议的BT资源爬虫

    2022-05-21 05:21:54
  • Python实现手绘图效果实例分享

    2021-03-19 11:28:00
  • Python基于yield遍历多个可迭代对象

    2023-01-05 23:01:32
  • Python实现将长图制作成一个视频

    2022-09-28 06:09:09
  • Python可视化神器pyecharts之绘制地理图表练习

    2022-08-12 10:20:00
  • pyhon如何把程序打包为whl

    2023-06-16 11:30:48
  • asp之家 网络编程 m.aspxhome.com