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

如何用Python在Outlook HTML邮件中动态展示列表内容

解决方案

要在HTML格式的Outlook邮件正文中展示动态长度的垂直枚举列表,直接利用HTML的原生列表标签即可实现,无需手动处理换行。以下是修改后的代码及说明:

import win32com.client as win32

# 避免使用list作为变量名,防止覆盖Python内置类型
test_list = ["dog","cat","mouse","monkey"]
outlook = win32.Dispatch('outlook.application')
mail = outlook.CreateItem(0)
mail.To =  "me@test.com"
mail.CC = "me@test.com"
mail.Subject = 'Test'

# 生成无序列表(圆点样式)的HTML片段
list_html = "<ul>" + "".join([f"<li>{item}</li>" for item in test_list]) + "</ul>"
# 若需要数字编号的有序列表,替换为下面这行:
# list_html = "<ol>" + "".join([f"<li>{item}</li>" for item in test_list]) + "</ol>"

# 拼接完整的HTML正文
mail.HTMLBody = f"<p>This is my test_list:</p>{list_html}"

mail.Display()

关键说明

  • 通过join结合列表推导式,可高效将任意长度的动态列表元素批量转换为<li>标签,再包裹在<ul>(无序列表)或<ol>(有序列表)标签内,Outlook会自动渲染为垂直换行的枚举样式。
  • 将变量名从list改为test_list,避免与Python内置的list类型冲突,减少潜在报错风险。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 20:42:30