用于编写.xlsx文件的python库。
XlsXcessive的Python项目详细描述
xlsxsive提供了一个python api,用于编写与excel/ooxml兼容的.xlsx 电子表格。它生成xml,因此您不必使用openpack 由YouGov将其打包成与OOXML兼容的ZIP文件。
许可证
许可证在项目元数据中指明(通常是一个或多个 在宝藏分类中)。有关详细信息,请参见this explanation。
创建工作簿
生成.xlsx文件的起点是工作簿:
from xlsxcessive.xlsx import Workbook workbook = Workbook()
添加工作表
单靠工作簿是没有多大用处的。可以将多个工作表添加到 工作簿并包含包含数据、公式等的单元格。将创建工作表 从工作簿中输入并要求输入名称:
sheet1 = workbook.new_sheet('Sheet 1')
使用单元格
一旦有了工作表,就可以向其中添加一些单元格。
sheet1.cell('A1', value='Hello, world') sheet1.cell('B1', value=7) sheet1.cell('C1', value=3.14) sheet1.cell('D1', value=decimal.Decimal("19.99"))
支持字符串、整数、浮点数和小数。
也可以通过行索引和列索引添加单元格。
sheet1.cell(coords=(0, 4), value="Added via row/col index")
当在数据结构上迭代以使用 细胞。
计算公式
单元格也可以包含公式。公式是用表示 公式代码。您可以选择提供预先计算的值和 sharedboolean标志,如果您希望在多个 细胞。引用共享公式作为其值的第一个单元格是主单元格 公式单元格。其他单元格也可以引用公式。
formula = sheet1.formula('B1 + C1', shared=True) sheet1.cell('C2', formula) # master sheet1.cell('D2', formula) # shared, references the master formula
具有样式的单元格
该库包含对单元样式的基本支持。你做的第一件事是 创建样式格式。样式格式在 工作手册。
bigfont = workbook.stylesheet.new_format() bigfont.font(size=24, bold=True)
一旦有了样式格式,就可以将其应用于单元格。
sheet1.cell('A2', 'HI', format=bigfont)
其他支持的样式转换包括单元格对齐和边框。
col_header = workbook.stylesheet.new_format() col_header.align('center') col_header.border(bottom='medium')
调整列宽
可以调整工作表上的列宽。指定列宽 按数字或索引。
# these are the same column sheet1.col(index=0, width=10) sheet1.col(number=1, width=10)
待办事项:按字母引用列。
合并单元格
单元格可以合并在一起。合并区域中最左边的单元格应该 包含数据。:
from xlsxcessive.worksheet import Cell a3 = sheet1.cell('A3', 'This is a lot of text to fit in a tiny cell') a3.merge(Cell('D3'))
保存您的工作
您可以将生成的ooxml数据保存到本地文件或输出文件中 流。:
# local file save(workbook, 'financials.xlsx') # stream save(workbook, 'financials.xlsx', stream=sys.stdout)
未来
这当然是一项正在进行的工作。重点是改善 可以在.xlsx文件中写入的功能。这意味着更多的数据类型, 样式、元数据等。我还想改进之前数据的验证 是用错误的方式写的,excel对此抱怨。我不认为 此库将被精心设计为读取.xlsx文件。那是另一份工作 图书馆会讨厌它的生活。