使用pyExcelerator

来源:互联网 发布:snmp测试软件 编辑:程序博客网 时间:2024/05/18 22:41

二、Excel文件写入

这个才是重头。那么安装好 pyExcelerator 之后,读了 Readme.txt 之后了解到它的文档正在进行当中,因此想多了解如何使用它需要看它所带的例子,甚至看源程序。下面是我从例子中了解的如何写一个 Excel 文档需要了解的。

为了方便,在导入这个模块中使用了import *的方式。

from pyExcelerator import *

首先导入模块,然后是生成工作薄。

w = Workbook()

接着是加入一个工作表(sheet)。

ws = w.add_sheet('Hey, Dude')

然后就可以保存了。

w.save('mini.xls')

上面的代码加在一起就是:

from pyExcelerator import *

w = Workbook()
ws = w.add_sheet('Hey, Dude')
w.save('mini.xls')

这就是最小的一个例子了,在例子中叫mini.py。你可以在例子目录下运行mini.py看一看是不是生成了一个空的Excel文件。

如果想加入中文很简单,改为:

#coding=cp936
from pyExcelerator import *

w = Workbook()
ws = w.add_sheet(u'这是中文')
w.save('mini.xls')

这样上面的执行结果是生成一个空Excel文件,但它的第一个sheet的名字为“这是中文”。就这样,只要保证你写入时使用unicode就行了。

空文件可以生成,那么如何插入单元格呢?

ws.write(i, j, value)

其中value为值,可以是unicode。

接着,我们可能想改变单元格的样式,如字体:

font0 = Font()
font0.name = 'Times New Roman'
font0.struck_out = True
font0.bold = True

style0 = XFStyle()
style0.font = font0

这样我们创建了一个字体,然后又生成了一个样式。注意,真正起作用的是样式,字体不过是样式中的一种效果。

这样在写入单元格时带着这个样式就行了,还是使用上面的write()方法:

ws.write(1, 1, 'Test', style0)

这是在名为ws的sheet中的第(1,1)单元格写入了值为"Test"的内容,并且它的样式为style0。

然后我们还可以设置单元格的边框:

    borders = Borders()
    borders.left = 5
    style.borders = borders

上面创建了一个边框效果,设置了左边框,至于5是什么意思,我也不清楚,随便写的。然后放到样式中。上面的例子可以参考format.py程序。

其它还有许多的效果,简单地列一下:

 示例名说明  col_width.py改变单元格宽度  row_style.py设置行的高度  merged*.py

单元格合并 

 image.py

插入图片 

 outline*.py

大纲效果(以前真没用过) 

 wsprops.py

sheet的属性值打印 

 xls2*.py

Excel转为其它的文件格式 

原创粉丝点击