针对 Python 的电子表格格式导出
Aspose.Cells FOSS for Python provides straightforward export from Excel workbooks to every format the FOSS library supports. A single workbook.save() 调用处理完整的输出管道 — XLSX、CSV、TSV、Markdown 或 JSON — 在不需要 Microsoft Office 的情况下保留单元格值和公式。.
安装与设置
pip install aspose-cells-foss导入核心类::
from aspose.cells_foss import Workbook, SaveFormat, Cell
from aspose.cells_foss import MarkdownHandler, MarkdownSaveOptions
from aspose.cells_foss import CSVSaveOptions支持的输出格式
| 格式 | SaveFormat 常量 | 备注 |
|---|---|---|
| XLSX | SaveFormat.XLSX | 默认格式;保留样式、公式、图表 |
| CSV | SaveFormat.CSV | 逗号分隔;默认仅第一张工作表 |
| TSV | SaveFormat.TSV | 制表符分隔值 |
| Markdown | SaveFormat.MARKDOWN | 生成标准的 Markdown 表格 |
| JSON | SaveFormat.JSON | 结构化的 JSON 表示表格数据 |
重要: Aspose.Cells FOSS 做 不 支持导出为 PDF、HTML、PNG、TIFF、DOCX 或 PPTX。这些仅在商业版 aspose-cells-python 仅限套餐。.
使用示例
保存为 XLSX
使用 a 保存时的默认格式 .xlsx 扩展名::
from aspose.cells_foss import Workbook, Cell
workbook = Workbook()
ws = workbook.worksheets[0]
ws.cells["A1"].value = "Product"
ws.cells["B1"].value = "Revenue"
ws.cells["A2"].value = "Widget A"
ws.cells["B2"].value = 12500
ws.cells["A3"].value = "Widget B"
ws.cells["B3"].value = 8750
workbook.save("report.xlsx")保存为 CSV
from aspose.cells_foss import Workbook, Cell, SaveFormat
workbook = Workbook()
ws = workbook.worksheets[0]
ws.cells["A1"].value = "Name"
ws.cells["B1"].value = "Age"
ws.cells["A2"].value = "Alice"
ws.cells["B2"].value = 30
ws.cells["A3"].value = "Bob"
ws.cells["B3"].value = 25
workbook.save("data.csv", SaveFormat.CSV)保存为 Markdown
将表格数据导出为 Markdown 表格 — 对文档和 README 生成很有用::
from aspose.cells_foss import Workbook, Cell
workbook = Workbook()
ws = workbook.worksheets[0]
ws.cells["A1"].value = "First name"
ws.cells["B1"].value = "Age"
ws.cells["A2"].value = "Alice"
ws.cells["B2"].value = 30
ws.cells["A3"].value = "Bob"
ws.cells["B3"].value = 25
workbook.save_as_markdown("data.md")输出为标准的 Markdown 表格::
| First name | Age |
|---|---|
| Alice | 30 |
| Bob | 25 |带选项的 Markdown
使用 MarkdownSaveOptions 用于细粒度控制::
from aspose.cells_foss import Workbook, Cell, MarkdownSaveOptions
workbook = Workbook()
ws = workbook.worksheets[0]
ws.cells["A1"].value = "City"
ws.cells["B1"].value = "Population"
ws.cells["A2"].value = "London"
ws.cells["B2"].value = 9000000
options = MarkdownSaveOptions()
workbook.save_as_markdown("cities.md", options)Markdown 转字符串(内存中)
生成一个 Markdown 字符串而不写入磁盘::
from aspose.cells_foss import Workbook, Cell, MarkdownHandler
workbook = Workbook()
ws = workbook.worksheets[0]
ws.cells["A1"].value = "Key"
ws.cells["B1"].value = "Value"
ws.cells["A2"].value = "version"
ws.cells["B2"].value = "26.3.0"
md_string = MarkdownHandler.save_markdown_to_string(workbook)
print(md_string)保存为 JSON
将工作簿数据导出为结构化 JSON,以供 API 流程使用::
from aspose.cells_foss import Workbook, Cell, SaveFormat
workbook = Workbook()
ws = workbook.worksheets[0]
ws.cells["A1"].value = "Name"
ws.cells["B1"].value = "Score"
ws.cells["A2"].value = "Alice"
ws.cells["B2"].value = 95.5
ws.cells["A3"].value = "Bob"
ws.cells["B3"].value = 88.0
workbook.save("data.json", SaveFormat.JSON)加载 CSV 并保存为 XLSX
from aspose.cells_foss import Workbook, SaveFormat
workbook = Workbook()
workbook.load_csv("input.csv")
workbook.save("output.xlsx", SaveFormat.XLSX)技巧与最佳实践
Markdown 导出
- 使用
MarkdownHandler.save_markdown_to_string(wb)用于内存中的使用场景,例如 API 响应。.
CSV 导出
- CSV 导出默认写入第一个工作表。.
- 单元格值中的特殊字符(逗号、换行)会自动加引号。.
JSON 导出
- JSON 导出使用单元格地址作为键。适用于数据交换;复杂公式会以其字符串表达式形式存储。.
常见问题及解决方案
| 问题 | 解决方案 |
|---|---|
ModuleNotFoundError: No module named 'aspose.cells_foss' | 运行 pip install aspose-cells-foss 并确认虚拟环境已激活 |
AttributeError 在 SaveFormat.PDF | PDF 导出不在 FOSS 库中;使用 SaveFormat.MARKDOWN 或 SaveFormat.XLSX 而不是 |
| 空的 Markdown 输出 | 在保存之前,请确保工作表中至少有一个单元格包含值 |
| Markdown 中的编码问题 | 使用 MarkdownHandler.save_markdown_to_string() 用于具有完整编码控制的内存字符串输出 |
常见问答
Aspose.Cells FOSS 支持哪些输出格式?? XLSX、CSV、TSV、Markdown 和 JSON。.
我可以转换为 PDF 吗?? 不。PDF 导出需要商业版 aspose-cells-python 包。Aspose.Cells FOSS 仅导出为 XLSX、CSV、TSV、Markdown 和 JSON。.
我可以加载已有的 XLSX 并重新保存为 Markdown 吗?? 是的。. Workbook("existing.xlsx") 加载文件,并 workbook.save_as_markdown("output.md") 导出它。.
是否支持基于流的 Markdown 输出?? 是的。使用 MarkdownHandler.save_markdown_to_string(workbook) 以获取 Markdown 作为 Python 字符串,而无需任何文件 I/O。.
支持哪些 Python 版本?? Python 3.7 及更高版本。.
另请参阅
- API 参考: 完整的类和方法文档
aspose.cells_foss - 知识库: 面向任务的操作指南
- 产品概览: 功能和能力概述
- 入门 / 安装: pip 安装和设置
- 博客:介绍 Aspose.Cells FOSS: 库概览和快速入门