python Email中换行问题
时间: 2024-01-11 08:48:35 浏览: 212
在 Python 中发送带有换行的电子邮件时,可以在邮件正文中使用 `\n` 或者使用 `os.linesep` 来表示换行符。例如:
```python
import smtplib
import os
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
# 设置邮件正文
body = "Hello,\n\nThis is an email with line breaks.\n\nBest regards,\nJohn"
# 或者使用下面这行代码来设置邮件正文(使用 os.linesep 表示换行符)
# body = f"Hello,{os.linesep}{os.linesep}This is an email with line breaks.{os.linesep}{os.linesep}Best regards,{os.linesep}John"
# 创建一个包含邮件正文的消息对象
msg = MIMEMultipart()
msg.attach(MIMEText(body))
# 发送邮件
smtp_server = "smtp.example.com"
smtp_port = 587
sender_email = "sender@example.com"
recipient_email = "recipient@example.com"
password = "password"
with smtplib.SMTP(smtp_server, smtp_port) as smtp:
smtp.starttls()
smtp.login(sender_email, password)
smtp.sendmail(sender_email, recipient_email, msg.as_string())
```
在邮件正文中使用 `\n` 或者 `os.linesep`,可以确保邮件在不同的平台上都可以正确显示换行符。
阅读全文