打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
[接口测试 - 基础篇] 07 来来来,一起读写excel玩玩之一

概述

我们看一下excel如何应用到我们的测试场景中来,通常的应用场景有:

  • 用于测试数据的管理维护

  • 用于自动化测试(含UI级、接口级等等)用例管理

  • 用于测试报告生成

下面我们介绍下使用openpyxl对excel进行读写。

什么是openpyxl

openpyxl是一个Python库读写Excel 2010 xlsx/xlsm/xltx /XLTM的库。

注意其局限性,不支持低版本的excel。

如何安装openpyxl和pillow

直接使用pip命令进行安装,如下:

pip install openpyxl

为了让openpyxl具备处理图片的能力,你还需要安装pillow,命令如下:

pip install pillow

官方文档

openpyxl官方文档如下:

https://openpyxl.readthedocs.io/en/default/

pillow官方文档如下:

http://pillow.readthedocs.io/en/4.2.x/

openpyxl基本示例

下面我们演示一个基本示例,实现一下功能:

  • 创建一个excel文档

  • 创建多个工作簿,往单元格中写入一些符串

  • 一次读取其中一个或多个单元格数据

  • 保存创建的excel文档

  • 读取已保存的excel中的数据

通过演示上面的功能,让大家对openpyxl有一个基本的了解。

#-*- coding:utf-8 -*-

__author__ = "苦叶子"

from openpyxl import Workbook, load_workbook

if __name__ == "__main__":    print("python openpyxl基本实例")    
   
   # 创建excel文档    wb = Workbook()    ws = wb.active    
   
   # 给默认的工作簿修改名称
   ws.title = "我的默认创建的工作簿"        # 对第一行,A-F列写入数据    for col in ("A", "B", "C", "D", "E", "F"):        ws["%s1" % col] = "开源优测"    # 对第二行,A-F列写入数据      for col in ("A", "B", "C", "D", "E", "F"):        ws["%s2" % col] = "公众号: DeepTest"    # 创建一个工作簿    ws1 = wb.create_sheet("新创建的工作簿1")    
   
   # 对第一行,A-F列写入数据
   for col in ("A", "B", "C", "D", "E", "F"):        ws1["%s1" % col] = "开源优测1"    # 对第二行,A-F列写入数据    for col in ("A", "B", "C", "D", "E", "F"):        ws1["%s2" % col] = "大数据测试"        # 创建一个工作簿    ws1 = wb.create_sheet("新创建的工作簿2")    
   
   # 对第一行,A-F列写入数据
   for col in ("A", "B", "C", "D", "E", "F"):        ws1["%s1" % col] = "开源优测2"    # 对第二行,A-F列写入数据    for col in ("A", "B", "C", "D", "E", "F"):        ws1["%s2" % col] = "快学Python3"        # 保存excel文档到硬盘    wb.save('openpyxl_demo.xlsx')    
   
   # 读取openpyxl_deml.xlsx文档中的内容    # 只读模式打开    r_wb = load_workbook(filename='openpyxl_demo.xlsx',
           read_only=True)    
           
   # 获取所有工作簿名称    sheets = r_wb.get_sheet_names()    
   
   # 遍历各个工作簿中的内容    # 即上述写入到第一、二行A-F列的数据    for sheet in sheets:        ws = r_wb[sheet]        print("---" * 20)        print(">>>读取", sheet)        
       
       # 遍历第一、二行A-F列的数据
       for row in (1, 2):      
           for col in ("A", "B", "C", "D", "E", "F"):                print(ws["%s%d" % (col, row)].value, end='      ')            print(end='\n')    
           
               # 一次性读取多个单元格的数据    print(end='\n\n')    print(">>> 一次性读取多个单元格数据")
               for sheet in sheets:        ws = r_wb[sheet]        print("---" * 20)        print(">>>读取", sheet)        cells_range = ws["A1": "F2"]                # 遍历下已读取的单元格的内容        for cells in cells_range:      
                       for cell in cells:                print(cell.value, end='  ')        print(end='\n')

小结

本文就openpyxl读写excel做了简要的分享,下一篇就openpyxl更多的使用功能进行分享。

开源优测

分享软件测试开源技术、经验、方案的首发平台

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
Python 读写excel文件
Openpyxl 创建一个工作簿
python第三方库之openpyxl(1)
Python3 读取和写入excel xlsx文件
Python中用OpenPyXL处理Excel表格
(ok)python3 如何将txt与excel 进行相互转换(.xls、.xlsx)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服