python xlwt xlrd模块详解_python之xlrd和xlwt模块读写excel使用详解

一、xlrd模块和xlwt模块是什么

xlrd模块是python第三方工具包,用于读取excel中的数据;

xlwt模块是python第三方工具包,用于往excel中写入数据;

二、xlrd模块和xlwt模块的安装

pip install xlrd

pip install xlwt

三、Excel表格结构如下:

img?u=aHR0cHM6Ly9pbWcyMDIwLmNuYmxvZ3MuY29tL2Jsb2cvMTk3NDUyNS8yMDIwMDQvMTk3NDUyNS0yMDIwMDQwNzIwNDI1OTIwNS0xMDQ1MTc3ODY0LnBuZw==

四、使用xlrd模块读取excel文件

#读取excel数据

defread_excel(self,excel_path,sheet_name):

xls= xlrd.open_workbook(excel_path,formatting_info=True) #先打开已存在的表,formatting_info=True表示保留原表格的样式

sheet = xls.sheet_by_name(sheet_name) #通过sheet名称获得sheet对象

dataList =[]for rows in range(1,sheet.nrows):#循环行

tempList =[]for cols in range(0,sheet.ncols-2):#循环列,因为最后两列是写入结果的所以减2

if cols==0:#判断如果是第一列则直接设置行数。

tempList.append(rows)else:

tempList.append(sheet.cell_value(rows,cols))

dataList.append(tempList)returndataList

read_excel方法参数说明:

excel_path参数为excel文件的路径,

sheet_name参数excel文件中的sheet名称。

五、使用xlrt模块向excel文件中写入数据

#向excel中写入数据

defwrite_excel(self,excel_path,sheet_name,rows,cols,value):#获得当前系统时间

current_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())#打开已存在的表,formatting_info=True表示保留原表格的样式

book = xlrd.open_workbook(excel_path,formatting_info=True)

wb= copy(book) #复制excel

sheet = wb.get_sheet(sheet_name) #通过sheet名称获得sheet对象

if value == 'fail':

sheet.write(rows,cols,value,style=xlwt.easyxf('pattern: pattern solid,fore_colour red;')) #引用样式

elif value == 'ignore':

sheet.write(rows,cols,value,style=xlwt.easyxf('pattern: pattern solid,fore_colour yellow;')) #引用样式

else:

sheet.write(rows,cols,value)#设置时间列的宽度和值

sheet.col(cols-1).width = 5000sheet.write(rows,cols-1,current_time)#保存

wb.save(excel_path)

read_excel方法参数说明:

excel_path参数为excel文件的路径,

sheet_name参数excel文件中的sheet名称。

rows参数把内容写入到第几行

cols参数表示把内容写入到第几列

value参数表示写入的内容

六、执行代码如下:

if __name__ == '__main__':

eu = ExcelUtil()

#print(eu.read_excel(get_project_path()+"data/testdata.xls","查询火车票"))

eu.write_excel(get_project_path()+"data/testdata.xls","查询火车票",1,6,"pass")

eu.write_excel(get_project_path()+"data/testdata.xls","查询火车票",2,6,"ignore")

eu.write_excel(get_project_path()+"data/testdata.xls","查询火车票",3,6,"fail")

七、独行踽近,众行致远!

如果你觉得此文对你有帮助,如果你对此文有任何疑问,如果你对软件测试、接口测试、自动化测试、面试经验交流感兴趣都可以加入软件测试技术群:695458161,群里发放的免费资料都是笔者十多年测试生涯的精华。还有同行一起交流哦。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值