在邮件报告等开发任务中,需要生成HTML表格。用Python生成HTML表格基本不难,只需要用for循环遍历数据,输出标签即可。如果需要合并单元格或者根据需要调整表格样式,那就比较麻烦了。这时候,你可以试试本文的主角——html-table包,使用它可以生成各种样式的HTML表格。下面用一个简单的例子来演示一下html-table的常用用法:开始之前,必须通过pip安装html-table包:$python-mpipinstallhtml-table安装完成后,可以导入HTMLTable类:fromHTMLTableimport(HTMLTable,)创建一个名为OrchardHarvestTable的新表:#Titletable=HTMLTable(caption='OrchardHarvestTable')Attachheader:#Tableheaderrowtable.append_header_rows((('name','yield(tons))','环比',''),('','','增加(吨)','增长率(%)'),))注意表头分两行,有些单元格需要合并,合并后的单元格需要留空。合并单元格设置:#合并单元格table[0][0].attr.rowspan=2table[0][1].attr.rowspan=2table[0][2].attr.colspan=2table[0]取出第一行是第一个
或 | table.set_cell_style({'border-color':'#000','border-width':'1px','border-style':'solid','padding':'5px',})接下来,设置标题单元格样式,指定颜色、字体大小和填充大小:#headerstyletable.set_header_row_style({'color':'#fff','background-color':'#48a6fb','font-size':'18px',})#覆盖表头单元格字体样式table.set_header_cell_style({'padding':'15px',})set_header_row_style给表格头部的两个 |
---|
标签设置样式。您应该尝试在 |
标签上设置颜色和其他样式,以简化生成的HTML。减小子表头的字体大小,不再赘述:#减小子表头的字体大小table[1].set_cell_style({'padding':'8px','font-size':'15px',})遍历每一行数据,如果第二个单元格的值小于0,则设置样式标记为红色底色:#遍历数据行,如果增长量为负数,则为表中的行标记红色底色。iter_data_rows():ifrow[2].value<0:row.set_style({'background-color':'#ffdddd',})最后生成HTML文本:html=table.to_html()print(html)Appendix更多Python技术文章,请查看:Python语言小册子订阅更新,获取更多学习资料,请关注我们的微信公众号:
最新推荐
猜你喜欢
|