• python模块之xlrd X


    安装:

    pip install xlrd

    使用:

    1.导入模块
    import xlrd
    
    2.打开文件
    xl = xlrd.open_workbook("data.xlsx")
    
    如果是通过上传文件来读取的话,可以指定读取的内容
    xl = xlrd.open_workbook(filename=None, file_contents=f.read())
    

      

    获取sheet:

    # 获取所有sheet名字
    xl.sheet_names()
    
    # 获取sheet数量
    xl.nsheets
    
    # 获取所有sheet对象
    xl.sheets()
    
    # 通过sheet名字查找
    xl.sheet_by_name('test')
    
    # 通过索引查找
    xl.sheet_by_index(3)

    获取sheet的汇总数据:

    # 获取sheet名
    sheet.name
    
    # 获取总行数
    sheet.nrows
    
    # 获取总列数
    sheet.ncols

    单元格批量读取:

    行:
    
    sheet1.row_values(0)  # 获取第一行所有内容,合并单元格,首行显示值,其它为空。
    sheet1.row(0)           # 获取单元格值类型和内容
    sheet1.row_types(0)   # 获取单元格数据类型
    import xlrd
    import os
    from datetime import date,datetime
    
    filename = "demo.xlsx"
    filePath = os.path.join(os.getcwd(), filename)
    
    x1 = xlrd.open_workbook(filePath)
    sheet1 = x1.sheet_by_name("plan")
    
    # 单元格批量读取
    print sheet1.row_values(0)  # 获取第一行所有内容,合并单元格,首行显示值,其它为空。
    print sheet1.row(0)         # 获取单元格值类型和内容
    print sheet1.row_types(0)   # 获取单元格数据类型
    
    输出:
    [u'learning plan', u'', u'', u'', u'', u'', u'', u'', 123.0, 42916.0, 0]
    [text:u'learning plan', empty:u'', empty:u'', empty:u'', empty:u'', empty:u'', empty:u'', empty:u'', number:123.0, xldate:42916.0, bool:0]
    array('B', [1, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4])
    

      

    表操作:

    sheet1.row_values(0, 6, 10)   # 取第1行,第6~10列(不含第10表)
    sheet1.col_values(0, 0, 5)    # 取第1列,第0~5行(不含第5行)
    sheet1.row_slice(2, 0, 2)     # 获取单元格值类型和内容
    sheet1.row_types(1, 0, 2)   # 获取单元格数据类型

    特定单元格读取:

     a) 获取单元格值:
    sheet1.cell_value(1, 2)
    sheet1.cell(1, 2).value
    sheet1.row(1)[2].value 
    b) 获取单元格类型:
    sheet1.cell(1, 2).ctype
    sheet1.cell_type(1, 2)
    sheet1.row(1)[2].ctype
    数据类型:
    • 空:0
    • 字符串:1
    • 数字:2
    • 日期:3
    • 布尔:4
    • error:5
  • 相关阅读:
    [POJ1724]ROADS
    表达式求值
    [NOIp2017提高组]奶酪(BFS)
    [NOIp2012提高组]Vigenère 密码
    [NOIp2012提高组]国王游戏
    [POJ1321]棋盘问题
    [POJ3009]Curling2.0
    垃圾陷阱
    2019CSP day1t2 括号树
    2019CSP游记
  • 原文地址:https://www.cnblogs.com/xingxia/p/python_xlrd.html
Copyright © 2020-2023  润新知