You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:pandas.to_html转换DataFrame为HTML表格时换行符不生效怎么办?

在Pandas生成的HTML表格中实现换行的解决方法
  • 核心问题:Pandas默认会对HTML特殊字符(比如<br>)进行转义,把它们转换成&lt;br&gt;,导致浏览器无法识别为换行标记。

  • 直接解决方法:使用escape=False参数
    调用DataFrame.to_html()时添加escape=False,关闭HTML字符转义,让<br>直接保留在输出的HTML中,从而被浏览器解析为换行:

    import pandas as pd
    
    # 构造带<br>的DataFrame
    df = pd.DataFrame({
        '内容': ['Hello <br> World', '第一行 <br> 第二行 <br> 第三行']
    })
    
    # 生成带换行的HTML表格
    html_output = df.to_html(escape=False)
    
  • 处理原生换行符(\n)的情况
    如果你的数据里是用普通换行符(\n)而不是<br>,可以先将\n替换为<br>,再关闭转义:

    # 将DataFrame中的换行符替换为<br>
    df['内容'] = df['内容'].str.replace('\n', '<br>')
    
    # 生成HTML表格
    html_output = df.to_html(escape=False)
    
  • 注意事项

    • 使用escape=False时要确保数据中没有恶意HTML代码(比如<script>),避免XSS风险。如果数据是可信的,这个参数完全安全。
    • 如果是在Jupyter环境中直接显示表格,可以配合IPython.display.HTML来渲染:
      from IPython.display import HTML
      display(HTML(html_output))
      

内容的提问来源于stack exchange,提问作者Harry

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 10:09:56