用Python生成HTML表格的方法示例
在邮件报表之类的开发任务中,需要生成 HTML 表格。
使用 Python 生成 HTML 表格基本没啥难度, for 循环遍历一遍数据并输出标签即可。如果需要实现合并单元格,或者按需调整表格样式,就比较麻烦了。
这时,可以试试本文的主角——html-table包,借助它可生成各种样式的 HTML 表格。接下来,以一个简单的例子演示 html-table 的常用用法:
开始之前,须通过 pip 安装html-table包:
$python-mpipinstallhtml-table
安装完毕后,即可导入 HTMLTable 类:
fromHTMLTableimport( HTMLTable, )
创建一个新表格,标题为果园收成表:
#标题 table=HTMLTable(caption='果园收成表')
附上表头:
#表头行
table.append_header_rows((
('名称','产量(吨)','环比',''),
('','','增长量(吨)','增长率(%)'),
))
注意到,表头分为两行,有些单元格需要合并,被合并的单元格需要留空占位。
合并单元格设置:
#合并单元格 table[0][0].attr.rowspan=2 table[0][1].attr.rowspan=2 table[0][2].attr.colspan=2
table[0]取出第一行,即第一个
接着,加入数据,方法与表头类似,总共有3行:
#数据行
table.append_data_rows((
('荔枝',11,1,10),
('芒果',9,-1,-10),
('香蕉',6,1,20),
))
至此,数据准备完毕,可以着手调整样式。先设置表格标题样式:
#标题样式
table.caption.set_style({
'font-size':'15px',
})
设置
| 或 |
table.set_cell_style({
'border-color':'#000',
'border-width':'1px',
'border-style':'solid',
'padding':'5px',
})
接着,设置表头单元格样式,规定颜色、字体大小、以及填充大小:
#表头样式
table.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',
})
遍历每个数据行,如果第2个单元格值小于0,设置样式标红背景颜色:
#遍历数据行,如果增长量为负,标红背景颜色
forrowintable.iter_data_rows():
ifrow[2].value<0:
row.set_style({
'background-color':'#ffdddd',
})
最后,生成 HTML 文本: html=table.to_html() print(html) 到此这篇关于用Python生成HTML表格的方法示例的文章就介绍到这了,更多相关Python生成HTML表格内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票! 声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。 热门推荐
|