异步示例
基本异步操作
import asyncio
from symphra_excel.async_support import AsyncWorkbook
async def create_workbook():
async with AsyncWorkbook() as wb:
sheet = await wb.create_worksheet("异步示例")
await sheet.set_cell_value("A1", "Hello Async")
await wb.save("async_output.xlsx")
asyncio.run(create_workbook())
并发创建多个文件
import asyncio
from symphra_excel.async_support import AsyncWorkbook
async def create_report(name, data):
async with AsyncWorkbook() as wb:
sheet = await wb.create_worksheet(name)
for idx, value in enumerate(data, start=1):
await sheet.set_cell_value(f"A{idx}", value)
await wb.save(f"{name}.xlsx")
async def main():
reports = [
("report1", [1, 2, 3]),
("report2", [4, 5, 6]),
("report3", [7, 8, 9]),
]
tasks = [create_report(name, data) for name, data in reports]
await asyncio.gather(*tasks)
asyncio.run(main())
相关文档