我希望以漂亮的方式打印出来并通过邮件发送。 应用string formatting
。
这是我的代码:
"{:<40s}".format(" Expected total delivery:") + "|" + "{:>10s}".format(`number`) + "{:>10s}".format(" (" + `percentage` + ")") + "n" +
"{:<40s}".format(" Current delivery:") + "|" + "{:>10s}".format(`number`) + "{:>10s}".format(" (" + `percentage` + ")") + "n" +
"{:<40s}".format(" Suggested Daily Delivery:") + "|" + "{:>10s}".format(`number`)
预期成果:
Expected total delivery: |
number
(百分比( 建议每日送货: |number
(百分比( 当前交货: |number
邮件发送的真实情况:
来自邮件的屏幕盖
我认为这将是由邮寄引起的问题。但是,我无法弄清楚这一点。
msg.attach(MIMEText(body, 'plain'))
有什么建议可以建议吗?提前感谢!
您似乎混淆了文本格式和渲染字体。 文本格式是程序生成的 ASCII 代码序列;这是您使用发布的"字符串格式"处理的内容。 渲染,即这些字符如何影响您在屏幕上看到的内容,是您发送的文本与显示软件之间的交互。 您使用的是 MIME 格式。
您需要查看 MIMEText 文档以查找您的界面和显示设备上支持的固定宽度字体。 这几乎可以肯定是一个简单的更改,将plain
替换为适当的字体,例如courier
.