使用 python 正确格式化电子邮件字符串
properly format string of emails using python
我有一段代码可以从列表中提取电子邮件地址并将它们添加到 MIME 服务的 'To' 字段中。由于电子邮件列表被误解,只有第一个收件人会收到电子邮件。
'list.csv' 文件如下所示
john.doe@domain.com
jean.donna@domain.com
我用来格式化地址的代码是这样的:
with open('list.csv') as allusers:
concat_out =', '.join(email for (email,) in csv.reader(allusers))
receiver = [concat_out]
MIME 部分:
msg = MIMEMultipart()
msg['Subject'] = 'Notification'
msg['From'] = sender
msg['To'] = '; '.join(receiver)
输出:
['john.doe@domain.com, jean.donna@domain.com'] #notice the missing quotes and a comma
#instead of a semi-colon
如何使列表的格式正确,使其看起来像这样?:
['john.doe@domain.com', 'jean.donna@domain.com']
感谢任何帮助。
为什么不直接创建一个列表,然后从列表中生成一个字符串。
with open('list.csv') as allusers:
concat_out = [email for (email,) in csv.reader(allusers)]
receiver = str(concat_out)
这会给你这样的输出:
"['john.doe@domain.com', 'jean.donna@domain.com'] "
这将在不触及旧代码的情况下解决您的问题
with open('list.csv') as allusers:
concat_out =', '.join(email for (email,) in csv.reader(allusers))
reciever=concat_out.split(',')
print(reciever)
output: ['john.doe@domain.com', ' jean.donna@domain.com']
email_list = []
with open('list.csv', 'r') as file:
for line in file.readlines():
email_list.append(line.strip('\n'))
print(email_list)
输出:
['john.doe@domain.com', 'jean.donna@domain.com']
我有一段代码可以从列表中提取电子邮件地址并将它们添加到 MIME 服务的 'To' 字段中。由于电子邮件列表被误解,只有第一个收件人会收到电子邮件。
'list.csv' 文件如下所示
john.doe@domain.com
jean.donna@domain.com
我用来格式化地址的代码是这样的:
with open('list.csv') as allusers:
concat_out =', '.join(email for (email,) in csv.reader(allusers))
receiver = [concat_out]
MIME 部分:
msg = MIMEMultipart()
msg['Subject'] = 'Notification'
msg['From'] = sender
msg['To'] = '; '.join(receiver)
输出:
['john.doe@domain.com, jean.donna@domain.com'] #notice the missing quotes and a comma
#instead of a semi-colon
如何使列表的格式正确,使其看起来像这样?:
['john.doe@domain.com', 'jean.donna@domain.com']
感谢任何帮助。
为什么不直接创建一个列表,然后从列表中生成一个字符串。
with open('list.csv') as allusers:
concat_out = [email for (email,) in csv.reader(allusers)]
receiver = str(concat_out)
这会给你这样的输出:
"['john.doe@domain.com', 'jean.donna@domain.com'] "
这将在不触及旧代码的情况下解决您的问题
with open('list.csv') as allusers:
concat_out =', '.join(email for (email,) in csv.reader(allusers))
reciever=concat_out.split(',')
print(reciever)
output: ['john.doe@domain.com', ' jean.donna@domain.com']
email_list = []
with open('list.csv', 'r') as file:
for line in file.readlines():
email_list.append(line.strip('\n'))
print(email_list)
输出: ['john.doe@domain.com', 'jean.donna@domain.com']