Selenium2+Python3实战(二):读取Excel文件

2017-06-27  杀人的微笑 

在做自动化测试时,当选择的是数据驱动测试的模式时,通常会通过读取文件的方式进行参数化。今天在学习读取csv文件时,想到要如何去读取excel文件,针对excel文件操作的方法会有所不同。

如果不安装xlrd模块而直接导入,会报错不存在该模块。


Step1:安装xlrd模块

1)到官网下载xlrd模块:

http://www.python-excel.org/

这里包含很多Python中关于Excel的模块,并且有详细的说明和实例,可以研究。

2)解压下载的模块,用cmd方式进入到解压的目录,输入命令:pip install xlrd, 按回车键等待安装完成。


Step2:读取Excel文件(注意我用的是Python3.6,所以在语法上与2.x会有差别,个人认为3.x更好用)

import xlrd #导入xlrd模块

#读取本地csv文件,打开excel文件(默认是rb方式打开)
myWorkbook = xlrd.open_workbook('bbb.xlsx')

#获取excel工作表
mySheets = myWorkbook.sheets( ) #获取工作表list
mySheet = mySheets[0]   #通过索引获取
#mySheet = myWorkbook.sheet_by_index(0) #通过索引顺序获得
#mySheet = myWorkbook.sheet_by_name(u'111')  #通过名字获取

#获取行数和列数
nrows = mySheet.nrows
ncols = mySheet.ncols
print ("The rows: %d" %nrows)
print ("The cols: %d" %ncols)

#获取一行和一列
for i in range(nrows):
    myRowValues = mySheet.row_values(i)
    print (myRowValues)

for j in range(ncols):
    myColValues = mySheet.col_values(j)
    print (myColValues)

#读取单元格数据
'''mycell = mySheet.cell(i, j)        #获取单元格,i是行数,j是列数,行数和列数都是从0开始计数
mycellvalue = mycell.value          #通过单元格获取单元格数据
mycellvalue = mySheet.cell_value(i, j)         #直接获取单元格数据'''
 
mycellvalue = mySheet.cell_value(0,0)   #改变i,j值则改变单元格
print (mycellvalue)



203°/2017 人阅读/2 条评论 发表评论

邓智群  2017-06-27

感觉python比java简单


杀人的微笑  2017-06-30

@邓智群 是的,它的语法比较简单


登录 后发表评论