我有一个pandas DataFrame,正在使用DataFrame.to_html方法生成一个可以在HTML email消息中发送的表。我只想让某些列中的值居中,但也想知道如何将格式应用到表中。在使用to_html之前,我已经尝试应用HERE找到的文档以及使用df.style,如下所示:
df.style.set_properties(**{'text-align':'center'})但是我仍然让我所有的值左对齐(除了头,它是居中的)。
将所有列值(或列值的子集)居中的正确方式是什么,还有哪些可用于格式化的其他选项?(例如,加粗文本、更改背景或边框颜色等)
此外,应该在哪个阶段应用此格式?是在to_html方法中,还是在此之前,就像我尝试使用df.style一样?谢谢!
发布于 2018-04-18 23:47:42
我建议在to_html函数中使用格式化程序,参数说明如下:
格式化程序:单参数函数的列表或字典,按位置或名称应用于列元素的可选格式化程序函数,默认为无。每个函数的结果必须是unicode字符串。列表的长度必须等于列数。
如果要将所有Name列设置为粗体,请执行以下示例:
df.to_html(formatters={'Name': lambda x: '<b>' + x + '</b>'})让我知道它是否有效!
发布于 2018-04-19 00:40:32
经过一些研究和Bubble Bubble Bubble Gut的帮助,可以很容易地通过以下方式将所有的<tr>标记替换为<tr align="center">:
html2 = html.replace('<tr>', '<tr align="center">')
print(html2)发布于 2020-09-11 13:06:45
我在CSS和python代码中做了一些改动,解决了这个问题。下面是我的python代码:
dft.to_html(classes=["table-bordered", "table-striped", "table-hover", "isi"]我创建了"isi“类,并用CSS编写它,如下所示:
.isi {
text-align:center; }下面是结果Values Centered
https://stackoverflow.com/questions/49903773
复制相似问题