实验:Python读取Excel文件
作者:强官涛   类型:Python开发    类别:实验   日期:2019-04-16    阅读:3214 次   消耗积分:0 分


在Python有很多第三方模块来处理excel,例如xlrd、xlwt、xluntils和pyExcelerator,这里我们介绍比较常用的xlrd模块。

 

(1)安装xlrd模块。进入Python安装路径,使用pip命令安装,如图x-x所示。


20190416_161016_071.png

图x-x xlrd模块安装


(2)在项目中的util包中创建一个文件excel.py,创建类Excel,在其中实现一个read_it的方法,用于读取excel中的数据。


import xlrd
class read_excel:

#定义excel文档读取方法
    def read_it(self,path,index=0):

#返回整个excel文件,其中包含多个sheet
        book = xlrd.open_workbook(path)

#获取指定索引的sheet表
        sheet = book.sheets()[index]
        return sheet
if __name__ == '__main__':
    s = read_excel().read_it('../data/agileonetestcase.xlsx')

#取得sheet表的所有行数
    for i in range(s.nrows):

#取得sheet表的所有列数
        for j in range(s.ncols):
            #通过行列坐标找到每个单元格的内容

print(s.cell(i,j).value,end='\t')
        print('')

 

上面是一个测试代码,在Excel类中定义了一个读取数据的方法。运行结果如下,可以看到输出了excel中的每一行数据,如图x-x所示。


20190416_161030_693.png

图x-x 用例读取结果


(3)上面的结果是按每一个单元格读取的,实际上xlrd模块提供另外的方式来返回结果,比如,前面用例里面接收的是列表,那么可以使用now_values()方法返回每一行内容的列表,需要什么就可以通过索引取什么,跟方便使用和维护,代码如下:


… #类的定义相同,此处省略

if __name__ == ‘__main__’:

s = read_excel().read_it('../data/agileonetestcase.xlsx')

#取得sheet表的所有行数
    for i in range(s.nrows):

    li = s.row_values(i)

    print(li)


代码运行结果如图x-x所示。


20190416_161043_898.png

图x-x 以列表的方式返回每行内容




为了答谢大家对蜗牛学院的支持,蜗牛学院将会定期对大家免费发放干货,敬请关注蜗牛学院的官方微信。


20190320_095757_834.jpg


版权所有,转载本站文章请注明出处:蜗牛学院在线课堂, http://www.woniuxy.com/note/295
上一篇: 资讯:与IT培训机构签订合同时,你一定要注意这些细节,不然会被坑惨!
下一篇: 访谈:17年毕业,公务员转行IT,他的入职月薪8K
提示:登录后添加有效评论可享受积分哦!