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

如何将Jupyter Notebook中带样式的DataFrame表格转为Word格式?

如何将带样式的Pandas DataFrame转为可粘贴到Word的格式化表格

你已经通过to_html()拿到了带样式的HTML字符串,接下来可以用以下几种实用方法把它转成Word能识别的格式化表格:

方法1:临时HTML文件中转(跨平台通用)

这是最稳妥的跨平台方案,不需要额外依赖:

  • 把HTML字符串写入临时.html文件:
import pandas as pd

df = pd.DataFrame({'a':[1,2,3],'b':['a','b','c']})
styled_html = df.style.background_gradient('Blues').to_html()

# 写入临时HTML文件
with open('temp_styled_table.html', 'w', encoding='utf-8') as f:
    f.write(styled_html)
  • 用浏览器打开这个HTML文件,选中表格后复制,再粘贴到Word,样式会完整保留。

方法2:直接把HTML写入剪贴板(Windows/macOS)

Windows环境

用win32clipboard库直接把HTML格式数据写入剪贴板,Word能直接识别:

import win32clipboard

def copy_html_to_clipboard(html):
    win32clipboard.OpenClipboard()
    win32clipboard.EmptyClipboard()
    # 构造Word能识别的HTML剪贴板格式
    html_header = "Version:0.9\r\nStartHTML:00000000\r\nEndHTML:00000000\r\nStartFragment:00000000\r\nEndFragment:00000000\r\n"
    html_full = f"{html_header}StartHTML:{len(html_header):08d}\r\nEndHTML:{len(html_header)+len(html):08d}\r\nStartFragment:{len(html_header)+len('<html><body>'):08d}\r\nEndFragment:{len(html_header)+len(html)-len('</body></html>'):08d}\r\n{html}"
    win32clipboard.SetClipboardData(win32clipboard.CF_HTML, html_full.encode('utf-8'))
    win32clipboard.CloseClipboard()

# 调用函数复制带样式的表格
copy_html_to_clipboard(styled_html)

运行后直接粘贴到Word,样式就会正确显示。

macOS环境

用subprocess调用系统命令,把HTML转成RTF后写入剪贴板:

import subprocess

def copy_html_to_clipboard(html):
    # 转义双引号避免命令报错
    escaped_html = html.replace('"', '\\"')
    cmd = f'echo "{escaped_html}" | textutil -format html -convert rtf -stdin -stdout | pbcopy'
    subprocess.run(cmd, shell=True)

copy_html_to_clipboard(styled_html)

执行后直接粘贴到Word即可。

方法3:用win32com直接写入Word(Windows专属)

如果不想手动粘贴,可以直接用pywin32库把表格插入到Word文档:

import win32com.client as win32

# 启动Word并新建文档
word = win32.gencache.EnsureDispatch('Word.Application')
word.Visible = True
doc = word.Documents.Add()

# 把带样式的HTML直接插入文档
doc.Range().InsertHTML(styled_html)

这样表格会直接出现在Word里,样式完全保留。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 06:43:39