zoukankan      html  css  js  c++  java
  • python读写excel

    Python操作excel表,需要用到两个库:xlrd和xlwt

    1、获取excel表Book对象实例:

      book = xlrd.open_workbook(filepath)

    2、获取excel的Sheet对象

      sheet_nums = book.nsheets    获取Sheet对象个数

      sheet = book.sheet_by_index(index) 下标从0开始

      sheet = book.sheet_by_name(name) 根据sheet的名字找到对应的Sheet对象

      sheets = book.sheets()        获取所有的Sheet对象列表

      sheets_name = book.sheet_names()  返回所有Sheet的名字列表

    3、Sheet对象属性及方法简介:

      cell = sheet.cell(rowIndex,colIndex)  # 返回指定单元格

      sheet.cell_type(rowIndex,colIndex)  #返回指定单元格的类型 等同于 cell.ctype,excel中对应的单元格类型如下: 

        XL_CELL_BLANK = 6  # 空(这种情况目前没有测试出来,不知道什么时候会出现这种情况)
        XL_CELL_BOOLEAN = 4 # 布尔
        XL_CELL_DATE = 3    # 日期
        XL_CELL_EMPTY = 0    # 空 (测试了下,当单元格不输入任何内容时为empty,输入空格,会当成text类型处理)
        XL_CELL_ERROR = 5   # 错误
        XL_CELL_NUMBER = 2   # 数字
        XL_CELL_TEXT = 1    # 字符串

      sheet.cell_value(rowIndex,colIndex)     # 返回指定单元格的值 等同于 cell.value

      sheet.col(colIndex)  # 返回指定列单元格信息列表

      sheet.col_slice(colIndex, start_rowIndex, end_rowIndex)  # 返回指定列中指定行对应的单元格信息列表

      sheet.col_types(colIndex, start_rowIndex, end_rowIndex) # 返回指定列中指定行对应的单元格的类型列表

      sheet.col_values(colIndex, start_rowIndex, end_rowIndex) # 返回指定行中指定列对应的单元格的值列表

      sheet.get_rows()  # 返回一个行的生成器对象

      sheet.row(rowIndex)  # 返回指定行单元格信息列表

      sheet.row_len(rowIndex)  #返回指定行单元格数量

      sheet.row_slice(rowIndex, start_colIndex, end_colIndex)  # 返回指定行中指定列对应的单元格信息列表

      sheet.row_types(rowIndex, start_colIndex, end_colIndex)  # 返回指定行中指定列对应单元格类型

      sheet.row_values(rowIndex, start_colIndex, end_colIndex)  # 返回指定行中指定列对应的单元格值列表

      sheet.put_cell(rowIndex, colIndex,type,text,xf_index)  #行号,列号,单元格类型,单元格值,xf_index: 字体,对齐,一般设置为None即可

      sheet.nrows  # nrows属性 返回总行数

      sheet.ncols  # ncols 属性 返回总行数

    4、调用xlwt的Sheet的write函数,写入新的excel文件

      wbook = xlwt.Workbook()

      wsheet = wbook.add_sheet(sheet_name)

      style = xlwt.easyxf("align:vertical center, horizontal center")

      for r in range(sheet.nrows):

        for c in range(sheet.ncols):

          wsheet.write(r,c, sheet.cell_value(r,c),style)

      wbook.save(newFile)

      

  • 相关阅读:
    Process 'command '/Users/lidaqiang/Library/Android/sdk/build-tools/27.0.3/aapt'' finished with non-zero exit value 1
    合同诈骗无罪裁判要旨、判决理由及评析意见
    互换不同种类毒品行为如何认定
    正当防卫指导性案例以及研析
    期待可能性理论的司法适用
    共同犯罪认定方法
    刑事案件鉴定意见常用质证要点
    张明楷的100个刑法案例
    刑事律师办案必备126部法律
    正当防卫裁判要旨16条
  • 原文地址:https://www.cnblogs.com/fiona-zhong/p/9915416.html
Copyright © 2011-2022 走看看