• python中xlrd模块的使用


    xlrd模块的使用,直接上列子,如下:

    有如下excel数据

     我们需要对该表中的数据进行读取,首先要导入xlrd模块

    1 import xlrd

    打开文件操作,testExcel.xlsx为文件加路径

    1 data = xlrd.open_workbook('testExcel.xlsx')

    代码示例,一次性读取所有数据:

    import xlrd
    
    def read_xlrd(excelTestFile):
        data = xlrd.open_workbook(excelTestFile)  # 打开路径下的文件,并读取
        table = data.sheet_by_index(0)  # 根据sheet的索引,确定表格;也可以根据sheet名称确定,如:table = data.sheet_by_name('用户表')
    
        for rowNum in range(table.nrows):  # excel表格中的有效行数,从0开始
            rowVale = table.row_values(rowNum)  # row_values返回该行中所有数据组成的一个列表
            for colNum in range(table.ncols):  # excel表格中的有效列数,从0开始
                if rowNum > 0 and colNum == 0:
                    print(int(rowVale[0]))
                else:
                    print(rowVale[colNum])
            print("#############################")
    
    if __name__ == '__main__':
        excelFile = 'testExcel.xlsx'
        read_xlrd(excelTestFile=excelFile)

    效果如下所示:

    其他的函数使用:

    获取book中的一个工作表

    table = data.sheets()[0]          #通过索引顺序获取
    
    table = data.sheet_by_index(sheet_indx)) #通过索引顺序获取
    
    table = data.sheet_by_name(sheet_name)#通过名称获取
    
    以上三个函数都会返回一个xlrd.sheet.Sheet()对象
    
    names = data.sheet_names()    #返回book中所有工作表的名字
    
    data.sheet_loaded(sheet_name or indx)   # 检查某个sheet是否导入完毕

    行操作:

    nrows = table.nrows  #获取该sheet中的有效行数
    
    table.row(rowx)  #返回由该行中所有的单元格对象组成的列表
    
    table.row_slice(rowx)  #返回由该列中所有的单元格对象组成的列表
    
    table.row_types(rowx, start_colx=0, end_colx=None)    #返回由该行中所有单元格的数据类型组成的列表
    
    table.row_values(rowx, start_colx=0, end_colx=None)   #返回由该行中所有单元格的数据组成的列表
    
    table.row_len(rowx) #返回该列的有效单元格长度

    列操作:

    ncols = table.ncols   #获取列表的有效列数
    
    table.col(colx, start_rowx=0, end_rowx=None)  #返回由该列中所有的单元格对象组成的列表
    
    table.col_slice(colx, start_rowx=0, end_rowx=None)  #返回由该列中所有的单元格对象组成的列表
    
    table.col_types(colx, start_rowx=0, end_rowx=None)    #返回由该列中所有单元格的数据类型组成的列表
    
    table.col_values(colx, start_rowx=0, end_rowx=None)   #返回由该列中所有单元格的数据组成的列表

    单元格操作:

    table.cell(rowx,colx)   #返回单元格对象,返回值的格式为“单元类型:单元值”
    
    table.cell_type(rowx,colx)    #返回单元格中的数据类型,单元类型ctype:empty为0,string为1,number为2,date为3,boolean为4, error为5
    
    table.cell_value(rowx,colx)   #返回单元格中的数据,返回值为当前值的类型(如float、int、string...)

    单元格操作举例说明:

    def read_xlrd(excelTestFile):
        data = xlrd.open_workbook(excelTestFile)  # 打开路径下的文件,并读取
        table = data.sheet_by_index(0)  # 根据sheet的索引,确定表格;也可以根据sheet名称确定,如:table = data.sheet_by_name('用户表')
      

    print(table.cell_value(1,1)) #返回单元格中的数据,返回值为当前值的类型(如float、int、string...) print(table.cell_type(1,1)) #返回单元格中的数据类型,单元类型ctype:empty为0,string为1,number为2,date为3,boolean为4, error为5 print(table.cell(1,1)) #返回单元格对象,返回值的格式为“单元类型:单元值

    if __name__ == '__main__': excelFile = 'testExcel.xlsx' read_xlrd(excelTestFile=excelFile)

    运行结果:

    
    
  • 相关阅读:
    字符串的操作
    10.20 整理1
    if else; while; break;continue ----流程控制系列
    10.19 重新打了第一天的代码(课件))
    10.17
    svn,导入数据到版本库及使用工作副本
    mysql的反引号backtick
    css中的1px并不等于设备的1px
    onclick事件属性与在用js绑定onclick事件中的this的区别
    一次对CI框架update方法底层实现的探索之旅
  • 原文地址:https://www.cnblogs.com/chenwenaa/p/12605126.html
Copyright © 2020-2023  润新知