姚程
[转载]python docx 加速创建大型表格
2022-6-5 00:00
阅读:1501

参考link

小型表格

import docx
import pandas as pd
data = pd.read_excel("some_data.xlsx")
doc = docx.Document() 
table = doc.add_table(rows=data.shape[0], cols=data.shape[1])
for i in range(df.shape[0]):
    for j in range(df.shape[1]):
        table.cell(i,j).text = str(df.values[i,j])
doc.save("output_file_path.docx")

大型表格,使用 table_cells = table._cells将所有单元格抽取出来,

在对抽取出来的单元格单独处理,避免对表格循环

import docx
import pandas as pd
data = pd.read_excel("some_bigger_data.xlsx")
doc = docx.Document() 
table = doc.add_table(rows=data.shape[0], cols=data.shape[1])
table_cells = table._cells
for i in range(data.shape[0]):
    for j in range(data.shape[1]):
        table_cells[j + i * data.shape[1]].text =  str(data.values[i][j])
doc.save("output_file_path.docx")

转载本文请联系原作者获取授权,同时请注明本文来自姚程科学网博客。

链接地址:https://wap.sciencenet.cn/blog-531760-1341572.html?mobile=1

收藏

分享到:

当前推荐数:0
推荐到博客首页
网友评论0 条评论
确定删除指定的回复吗?
确定删除本博文吗?