1. xlrd   ---读excel

         #打开文件

  • workbook = xlrd.open_workbook(r'F:\')

  • #获取所有sheet

  • workbook.sheet_names()  返回一个列表

  • #根据sheet索引或者名称获取sheet内容

  • sheet2 = workbook.sheet_by_index(1)

  • sheet2 = workbook.sheet_by_name('sheet2')

  • #获取sheet2的名称,行数,列数

  • sheet2.name,sheet2.nrows,sheet2.ncols

  • #获取整行和整列的值(数组)

  • rows = sheet2.row_values(3) #第四行内容

  • cols = sheet2.col_values(2) #第三列内容

  • #获取单元格内容

  • sheet2.cell_value(1,0).encode('utf-8')

  • #获取单元格内容的数据类型

  • sheet2.cell(1,0).ctype

    2. xlrw     --写excel

  • xlwt  写文件

  • #创建工作簿

  • f = xlwt.Workbook(encoding='utf-8')

  • #创建第一个sheet

  • sheet1 = f.add_sheet('sheet1')

  • #写数据,对应 行 列 值

  • sheet1.write(0,1,label = 'this is the test')

  • #保存

  • f.save('xx.xlsx')

  • 3.openpyxl   --兼读写excel

  •  新建: wb = openpyxl.Workbook()

  •    删除工作表 wb.remove(sheet)

  •    读取一个表格  wb = openpyxl.load_workbook('')

  •    获取所有工作表名 sheets = wb.get_sheet_names()

  •    获取某一个特定的工作表 sheet = wb.get_sheet_by_name('Sheet2')

  •    获取工作表的表名  sheet_name = sheet.title

  •    获取激活的工作表  sheet = wb.active

  •    获取单元格内容   a = sheet['A2']   a = sheet.cell(1,2)    a.value

  •    获取行  sheet.rows

  •    获取列  sheet.columns

  •    

  •    获取最大行 sheet.max_row

  •    获取最大列 sheet.max_column

  •    给单元格赋值 sheet['A2'].value = 3

  •    保存单元格  wb.save('')

   对比:

     1.xlrd,xlwt.分别只是读写,而openpyxl则可同时处理读写

     2.xlwt保存的表格后缀必须为xls,而openpyxl可保存xlsx和xls

     综上:openpyxl比较合适