我继承了一些Python代码,用于创建最多19列宽5000行的表。最初,在屏幕上绘制表格需要9秒,但是I managed to reduce that到需要6秒。你知道吗
现在我想进一步优化它。毫无疑问,我已经看到瓶颈是创建单元格内容的部分。代码是:
sText += '<td align="middle">%s</td>' % sCellContents
其中sText
和sCellContents
是字符串。(格式化单元格内容的样式可能不同。)
如果除去<td></td>
标记以外的所有内容,则速度不变,这意味着样式对性能没有影响。但是,如果我删除这些标记(从而将内容放在表外),屏幕将在三秒后显示(当然,格式很糟糕)。你知道吗
有没有办法在保留格式的同时优化那一行?你知道吗
我已经尝试使用列表:
lText.append(sCellContents)
最后连接:
sText = ''.join(lText)
但这没什么区别。你知道吗
你应该试试
io.StringIO
。而是一个流,可能会提高性能。像这样使用:您可以尝试Mako模板,而无需对现有代码进行太多修改。你知道吗
如果有什么不同的话,看看会有什么不同真的很有趣。你知道吗
相关问题 更多 >
编程相关推荐