我试图在一个总共有4个项目的字典中循环一个键。但是,它不会遍历所有条目,而只显示最后一项的键。
Prueba = {"A":"###@gmail.com",
"B":"###@gmail.com",
"C":"###@gmail.com"}
with smtplib.SMTP('smtp.gmail.com',587) as zero:
zero.ehlo()
zero.starttls()
zero.ehlo()
zero.login(Emaill, Passs)
for keyyy in Prueba.keys():
subject = 'Subject {0}'.format(keyyy)
for keyyy in Prueba.keys():
body = 'Body {0}. Body2 {1}.'.format(keyyy,keyyy)
msg = f'subject: {subject}nn{body}'
for keyy in pp.Prueba:
zero.sendmail(Emaill,Prueba[keyy],msg)
邮件发送时间。所有邮件只显示最后一项的key ("C")我想显示每个电子邮件及其各自的密钥。
你要做的是为每个动作使用一个循环,而不是为所有动作使用一个循环:
Prueba = {"A":"###@gmail.com",
"B":"###@gmail.com",
"C":"###@gmail.com"}
with smtplib.SMTP('smtp.gmail.com',587) as zero:
zero.ehlo()
zero.starttls()
zero.ehlo()
zero.login(Emaill, Passs)
for keyyy in Prueba.keys():
subject = 'Subject {0}'.format(keyyy)
body = 'Body {0}. Body2 {1}.'.format(keyyy,keyyy)
msg = f'subject: {subject}nn{body}'
zero.sendmail(Emaill,Prueba[keyy],msg)
应该在正确的邮件中有正确的主题和正文。我还没有真正测试过代码,但它应该是这样工作的。