用Python给多个联系人发邮件
我正在尝试给多个邮箱发送邮件。下面的代码展示了我想要实现的功能。当我添加两个邮箱地址时,邮件却没有发送到第二个地址。我的代码是:
me = 'a@a.com'
you = 'a@a.com, a@a.com'
msg['Subject'] = "Some Subject"
msg['From'] = me
msg['To'] = you
# Send the message via our own SMTP server
s = smtplib.SMTP('a.a.a.a')
s.sendmail(me, [you], msg.as_string())
s.quit()
我尝试过:
you = ['a@a.com', 'a@a.com']
还有
you = 'a@a.com', 'a@a.com'
谢谢
4 个回答
2
在编程中,有时候我们需要处理一些数据,比如从一个地方获取数据,然后在另一个地方使用这些数据。这个过程就像是把水从一个水桶倒到另一个水桶里。我们需要确保水不会洒出来,也就是要保证数据的完整性。
为了做到这一点,程序员们通常会使用一些工具和方法来管理这些数据的流动。比如,有的程序会在数据传输的过程中进行检查,确保数据没有被损坏或丢失。
此外,程序员还会使用一些特定的格式来存储和传输数据,这样可以让不同的程序之间更容易理解和使用这些数据。就像是用统一的语言交流,大家都能听懂。
总之,处理数据就像是搬运东西,我们需要小心翼翼,确保每一件东西都能安全到达目的地。
you = ('one@address', 'another@address')
s.sendmail(me, you, msg.as_string())
14
你想要的是这个:
from email.utils import COMMASPACE
...
you = ["foo@example.com", "bar@example.com"]
...
msg['To'] = COMMASPACE.join(you)
...
s.sendmail(me, you, msg.as_string())
12
试试这个
s.sendmail(me, you.split(","), msg.as_string())
如果你这样写 you = ['a@a.com', 'a@a.com']
再试试这个
msg['To'] = ",".join(you)
...
s.sendmail(me, you, msg.as_string())