为python-docx插入表格提速
用Python-docx在Word中插入表格时,速度慢到无法接受(插入500行9列的表格,大概耗时2~3分钟),也是电脑的性能比较差,但无法保证用户的电脑性能会高到哪儿去。
搜索解决方案,多是使用Table._cells变量代替Table.add_row()函数,但这方案在我这儿竟然没起什么作用,不知道是哪儿的问题。贴一篇此方案的参考:“代码一字狂” 写的 python-docx 添加表格时很慢的解决方法
后来尝试减少插入数据的行数,发现每次调用add_table()函数插入3行表格时,插入500行的总体耗时最短(6秒左右),这虽然与常识(重复的操作在批量执行时性能最好)相悖,但确实解决了问题。看来python-docx内部有些特殊的处理。
不算正式的python程序员,没有继续深入探索,请大家见谅哈!
相关代码如下,比较简单,没加注释:
RowPerTimes = 3
rowIndex = 0
isOver = False
while True:
remainder = totalCount