python3 读取excel

简介

xlrd是python的一个第三方模块,可以实现跨平台读Microsoft Excel文件。(它有一个兄弟叫xlwt,专注于写Excel文件。)
它并不像win2com那样借助COM技术来访问Excel,而是直接分析Excel文件格式,从中解析数据。因此你可以在任何支持python的平台上使用excel文件。这一点它比win2com要优秀得多。
另外,它对unicode支持的很好,这也是我青睐它的重要原因。
它的工作原理所限,我们不能期望它覆盖Excel全部的功能,访问到全部的数据。
比如,下面这些数据类型xlrd会忽略掉:

  • 图表,宏,图片等嵌入对象(包括嵌入的worksheet)。
  • VBA模块。
  • 公式(只能识别公式的计算结果,而不是公式本身)。
  • 注释。
  • 链接。

但一些简单的读取还是得心应手的,这已经能满足大多数情况下的需求。
现在它能支持的Excel版本包括:2004, 2003, XP, 2000, 97, 95, 5.0, 4.0, 3.0, 2.1, 2.0。 官方未说明它是否能支持Excel 2007。
它有两个分支,分别是:

xlrd (http://pypi.python.org/pypi/xlrd) 针对Python 2.x系列。
xlrd3(http://pypi.python.org/pypi/xlrd3) 针对Python 3.x系列。

这两个分支是100%兼容的,也就是说,它们的使用完全一样,你在3.x系列中怎么用xlrd,在2.x系列中仍然这么用。
以下的实际操作都使用xlrd3,在python 3.2下完成。

安装

xlrd在python官网的发布主页是http://pypi.python.org/pypi/xlrd3 ,当前xlrd3的最新版本是0.1.4。
下载得到一个压缩包,假设我们将它解压到D:\Download\xlrd3-0.1.4,可以看到如下文件。




 
 

 可以看到有文档、示例、测试文件等。注意其中的setup.py,它是标准的python模块安装方式。

先确认一下python的版本与xlrd3是否一致。

D:\Download\xlrd3-0.1.4>python -V
Python 3.2.2

OK,我们用的是python3,接下来执行安装脚本。

D:\Download\xlrd3-0.1.4>python setup.py install

一长串输出后,没有看到错误的话,xlrd就安装成功了。

试用

假设我们有一个文件叫test.xls,位于D:\Workspace\Python\xlrd3-test\test.xls
其内容如下:

ff

 

这是一张9行4列的PC主机报价单,当然,价格全是扯淡。
下面使用xlrd程序将PC这张表的内容打印出来。

01 import xlrd3
02 
03 def main():
04     xlsfile=xlrd3.open_workbook("D:\\Workspace\\Python\\xlrd3-test\\test.xls")
05     try:
06         mysheet = xlsfile.sheet_by_name("PC")
07     except:
08         print("no sheet in %s named PC")
09         return
10 
11     # total rows and cols
12     print("%d rows, %d cols"%(mysheet.nrows, mysheet.ncols))
13 
14     for row in range(0, mysheet.nrows):
15         temp=""
16         for col in range(0, mysheet.ncols):
17             if mysheet.cell(row, col).value != None:
18                 temp+=str(mysheet.cell(row, col).value)+"\t"
19         print(temp)
20 
21 if __name__ == '__main__':
22     main()

输出:

d

 

大功告成!
以上仅是一个入门介绍,关于xlrd更多的信息请参考:

http://packages.python.org/xlrd3/
http://www.lexicon.net/sjmachin/xlrd.htm

 

来自:http://www.360doc.com/content/12/0918/22/9369336_236837182.shtml

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python3读取Excel进行自动化测试是一种常见的测试方法。Python提供了许多库来处理Excel文件,其中最常用的是openpyxl库。通过openpyxl库,我们可以轻松地读取Excel文件并提取其中的数据,然后利用这些数据进行自动化测试。 首先,我们需要安装openpyxl库。可以使用pip命令在命令行中安装该库: ``` pip install openpyxl ``` 接下来,我们可以使用openpyxl库中的load_workbook函数打开Excel文件: ```python from openpyxl import load_workbook workbook = load_workbook('test_data.xlsx') ``` 在这里,‘test_data.xlsx’是我们要读取Excel文件名。 一旦打开Excel文件,我们就可以通过工作簿对象来访问不同的工作表。可以使用get_sheet_names方法来获取所有工作表的名称,并选择要读取的工作表: ```python worksheet = workbook['Sheet1'] ``` 接下来,我们可以使用iter_rows方法迭代读取工作表中的每一行数据,并将其存储到一个列表中: ```python data = [] for row in worksheet.iter_rows(): row_data = [] for cell in row: row_data.append(cell.value) data.append(row_data) ``` 读取Excel中的数据后,我们可以根据测试需求进行自动化测试。可以使用该数据来驱动测试工具或框架,执行不同的测试用例,评估测试结果,并生成报告。 利用Python3读取Excel进行自动化测试,可以大大减少测试过程中的人工操作和重复劳动,提高测试效率和准确性。例如,我们可以使用循环结构和条件语句来自动化执行各种测试用例,并使用断言语句进行结果验证。 总结起来,Python3读取Excel进行自动化测试是一种强大而灵活的测试方法,可以根据实际需求进行定制化的测试,并提高测试效率和质量。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值