zoukankan      html  css  js  c++  java
  • Python三个处理excel表格的库

    三个向excel表格写入数的库:xlwt,xlsxwriter,openpyxl,代码如下:

     1 #第一个库,xlwt,不能写超过256列的表格
     2 import xlwt
     3 
     4 #新建workbook
     5 workbook = xlwt.Workbook()
     6 #新建worksheet
     7 sheetTest = workbook.add_sheet("sheetTest")
     8 for i in range(0,300):
     9     sheetTest.write(0, i, i)
    10 #保存workbook
    11 workbook.save('Test.xls')
    12 #报错:ValueError: column index (256) not an int in range(256),说明xwlt不能写入超过256列
    13 
    14 
    15 #第二个库,xlsxwirter,不能带格式写入
    16 import xlsxwriter as xw
    17 #新建workbook,并指定保存的路径
    18 workbookxw = xw.Workbook("路径/workbookxw.xlsx")
    19 #新建工作表
    20 sheetAnotherTest = workbookxw.add_worksheet("sheetAnotherTest")
    21 for i in range(0, 300):
    22     sheetAnotherTest.write(0, i, i)
    23 workbookxw.close()
    24 #保存成功,可以写入256列
    25 
    26 #第三个库,openpyxl,我把它定义为追加写入的库,也可以利用模板追加写入,不同的地方是,它可以打开.xlsx格式的模板
    27 import openpyxl
    28 #打开文件,载入已有的工作簿
    29 workbook = openpyxl.load_workbook("openpyxlxlsx.xlsx")
    30 #读取工作簿里的第一个工作表
    31 sheet0 = workbook['Sheet1']
    32 #向工作表写入内容
    33 sheet0["B3"] = '5' #B3代表的是单元格,也就是第二列第三行
    34 sheet0["B4"] = '7'
    35 sheet0["B5"] = 5
    36 sheet0["B6"] = 6
    37 
    38 #保存工作簿
    39 workbook.save("Test.xlsx")
    40 #写入的完全根据模板格式来写的

    总结:

    1,xlwt不能写入超过256列,可以带格式;
    2,xlsxwriter不支持带格式写入,可以写超过256列;
    3,openpyxl的性能不是特别稳定,在使用过程中会出现不可预知的错误;
    4,万一出现了要写入超过256列的表格,而且要带格式,只能用openpyxl;
  • 相关阅读:
    HYSBZ 1797 Mincut 最小割
    CodeForces 820B + 821C
    Codeforces 817+818(A~C)
    codeforces 816B Karen and Coffee (差分思想)
    840. Magic Squares In Grid ——weekly contest 86
    Linux 环境下 C++ 的开发编译
    838. Push Dominoes —— weekly contest 85
    836. Rectangle Overlap ——weekly contest 85
    六度空间
    835. Image Overlap —— weekly contest 84
  • 原文地址:https://www.cnblogs.com/mafu/p/13926377.html
Copyright © 2011-2022 走看看