前言

自动化测试中,有时候需要操作Excel文件,对excel文件进行读写操作,比如测试产品下载功能生成的excel文件,你需要验证这个excel文件里的内容是否下载正确,还有编写测试框架,你需要把脚本执行写入excel中,并发送给相关人看。python专门有针对操作excel的第三方库

支持 Excel 读取的扩展库叫做 xlrd 库,支持 Excel 写入的扩展库叫做 xlwt 库。我们可以使用下面的命令行进行安装:

pip3 install xlrd

pip3 install xlwt

python读写Excel_Python

实践

我们创建一个简单的excel文件,来操作它

python读写Excel_保存文件_02

代码

import xlrd

file = '/Users/cindy/Downloads/test1.xls'

data = xlrd.open_workbook(file)
table = data.sheets()[0]
value = table.cell_value(rowx=1, colx=0)
print(value)

执行, 打开excel文件,读取第一个sheet里的内容,索引为0,如果有多个sheet,可以指定索引,然后取出第二行第一列的单元格内容,打印单元格的值,索引下标是从0开始,所以取的值应该是aa

python读写Excel_python_03

这是简单的读操作,下面我们再看一个简单的写操作 把刚才读出来的值重新写入并覆盖原来的sheet表

import xlrd
import xlwt

file = '/Users/cindy/Downloads/test1.xls'

data = xlrd.open_workbook(file)
table = data.sheets()[0]
value = table.cell_value(rowx=1, colx=0)
print(value)

workbook = xlwt.Workbook(encoding='utf-8')
xlsheet = workbook.add_sheet("cc")

# 写入内容,假设写入的内容是value
xlsheet.write(0, 0, value)

# 保存文件
workbook.save(file)

重新打开测试文件

python读写Excel_python_04

如果想重复写入。通常我们会先获取现有的内容一共有多少行、多少列,然后向后移动一个位置,通过循环依次写入。