zoukankan      html  css  js  c++  java
  • Python读取Excel文件(蜗牛学院)

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

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

    图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=' ')
            print('')

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

    图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所示。

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

  • 相关阅读:
    POJ 1015 Jury Compromise【DP】
    POJ 1661 Help Jimmy【DP】
    HDU 1074 Doing Homework【状态压缩DP】
    HDU 1024 Max Sum Plus Plus【DP,最大m子段和】
    占坑补题。。最近占的坑有点多。。。
    Codeforces 659F Polycarp and Hay【BFS】
    Codeforces 659E New Reform【DFS】
    Codeforces 659D Bicycle Race【计算几何】
    廖大python实战项目第四天
    廖大python实战项目第三天
  • 原文地址:https://www.cnblogs.com/woniuxy/p/10907312.html
Copyright © 2011-2022 走看看