python操作excel的几种插件对比

发布时间:2019-09-12 08:00:21编辑:auto阅读(2617)

    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比较合适


关键字