用xlwt和xlrd读写Excel文档

工作中不可避免要整Excel文档,比如统计啦排版啦。python官网中有两套类库xlwt和xlrd,不被包含在默认的python类库一起发布,而需要用setup.py install方式来安装。这两套类库的名字比较有趣,拆开来可以看成excel write read,顾名思义是用来读写Excel表格的。但是好好的为什么要两套类库呢,我猜可能是Excel的存储方式很复杂吧,于是这两套类库一个只能读,一个只能写,如果你需要读了修改后再保存,便无能为力了。如果不需要这样的话,就请继续看介绍吧。

xlrd是用来读Excel文档,下载见这里。这里一个小例子:

import xlrd

fname = "201004.xls"
main_sheet = xlrd.open_workbook(fname).sheet_by_index(0)
the_value = main_sheet.cell_value(0, 0) ##read the cell (column 0 and row 0)

xlwt是用来写Excel文档(新建并保存),下载见这里。这里有一个小例子。

import xlwt

bkw = xlwt.Workbook(encoding='utf-8')
sheet = bkw.add_sheet('sheet_name')
sheet.write(0, 0, 'the_value', xlwt.Style.default_style)

这两套类库有比较详细的doc可供查询。值得一提的是,这两套类库是如此相像,但是却不能互用。比如要修改cell的样式(如字体,加粗等),需要使用XFObject,xlwt和xlrd都有定义但却不是一样的。xlwt定义的非常广泛(见Style.py文档)。

RELATED POSTS

Leave a Reply