0

我正在尝试使用 win32com 发送电子邮件并将对象作为正文,例如:

outlook = win32com.Dispatch('outlook.application')
mail = outlook.CreateItem(0)
mail.To = 'receiver@email.com'
mail.Subject = 'subject of email'
mail.HtmlBody = table
mail.send

在哪里:

table = PrettyTable(['Header1', 'Header2'])
table.add_row(['row1col1', 'row1col2'])

但是,我收到以下错误消息:

TypeError: Objects for SAFEARRAYS must be sequences (of sequences), or a buffer object.

我试图将字符串从table objectastable.get_string()和 as 中 取出str(table)。在这两种情况下,整个table object都打印为string单行(它丢失了table格式)

编辑:

table如果我作为电子邮件正文发送,我可以通过电子邮件发送table.get_html_string(),但是,我失去了所有的边界,这没关系..ish,但不是很好......

第二次编辑:

PrettyTable提供了一个 API 来在 Python 中打印表格,并最终返回一个对象。

基本上,我正在尝试获取该对象(当我调用该对象时,print table我会返回一个格式良好的表格)并将其转储到电子邮件中

4

0 回答 0