python操作excel在我们的工作中经常会用到,操作用例读取对应信息进行接口自动化
python Excel库对比
我们发现可以操作excel的库有很多种,我们常用的就三种方法
-
第三方库 xlwt/xlrd:用于生成和读取比较老的excel文件,比如xls格式,最大行数限制为65536行。其中xlrd是读excel,xlwt是写excel的库。
-
第三方库 openpyxl:用于生成2010之后新的excel文件,比如xlsx格式,最大行数限制为1048576行
-
第三方库 pandas:pandas是最强大的数据分析库,自带excel读取和生成模块
本文主要使用openpyxl库
安装openpyxl库
pip install openpyxl -i https://pypi.douban.com/simple/
写入Excel
写入基本操作步骤:
-
1.获取workbook
-
2.获取 worksheet
-
3.再然后获取单元格,进行操作
-
4.保存文件
import openpyxl
# 创建workbook对象
wb = openpyxl.Workbook()
# # 删除默认创建的一个sheet页
ws = wb['Sheet']
wb.remove(ws)
# # 给sheet页命名
sheetName = "松勤测试"
# 创建sheet页
ws = wb.create_sheet(sheetName)
# 写入方式1:(行、列、值)
ws.cell(row=1, column=1, value="python")
ws.cell(row=1, column=2).value = "java"
ws.cell(row=1, column=3).value = "松勤"
ws['A4'].value = "sq"
# 写入方式2:append方法
row = ["python","java","松勤","sq"]
# 向工作表中 按行添加数据
ws.append(row)
# filePath 是指保存的 excel 文件路径
filePath = "松勤.xlsx"
# 保存xlsx
wb.save(filePath)
读取Excel
import openpyxl
# fileName 这里是指文件路径
fileName = "松勤.xlsx"
# 使用load_workbook()方法,以只读模式打开工作簿 #指定read_only=True方式,按列读取会失败
wb = openpyxl.load_workbook(filename = fileName,read_only = True)
# sheetName 就是 sheet页的名称
sheetName = "松勤测试"
# 通过 工作表名 获取 工作表
ws = wb[sheetName]
# 读取方式1:指定读取 A1、B1和C1单元的内容方法
a1 = ws['A1'].value
b1 = ws['B1']
c1 = ws.cell(row=1, column=3).value
print(a1)
print(b1.value)
print(c1)
# 读取方式2:用循环读取指定的部分内容['A1,D1']
for row in ws['A1:D1']:
for cell in row:
print(cell.value)
# 读取方式3:
# 按行读取 工作表的全部内容
for row in ws.rows:
for cell in row:
print(cell.value)
# # 按列读取 工作表的全部内容
for column in ws.columns:
for cell in column:
print(cell.value)
更新Excel
import openpyxl
# fileName 这里是指文件路径
fileName = "松勤.xlsx"
#使用load_workbook()方法,以只读模式打开工作簿
wb = openpyxl.load_workbook(fileName)
sheetName = "松勤测试"
# 通过 工作表名 获取 工作表
ws = wb[sheetName]
#修改对应数据
ws["A1"]="sq"
# filePath 是指保存的 excel 文件路径
filePath = "松勤.xlsx"
# 保存xlsx
wb.save(filePath)
最后: 下方这份完整的软件测试视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取 【保证100%免费】
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!