【发布时间】:2022-03-22 13:54:49
【问题描述】:
我正在编写一个 python 脚本来帮助朋友的课后程序将学费账单发送给父母。我在{studentName, tuition} dict 里有学生补习,而在另一个{studentName, parentContact} dict 里有家长联系方式,由于出勤率不同,每个学生的学费不同。我有以下功能打算向个别家长发送包含不同学费信息的个人电子邮件。我遇到的问题是,当我从 python shell 运行我的 python 脚本时,当我打印出来时,看起来不同学费的不同电子邮件是针对不同父母的,但每个父母收到的实际电子邮件是相同的副本第一个学生的学费信息。这是我的发送电子邮件功能:
def send_mail(studentParentContact, studentTuition):
msg=MIMEMultipart()
msg['Subject'] = 'Your kid After-school Program Tuition Bill'
msg['From'] = FLPEmail #after-school program's email address
# Send the message via SMTP server
s = smtplib.SMTP('smtp.gmail.com', 587)
s.starttls()
s.login(username, PASSWORD) #after-school program gmail login
for student in studentParentContact:
ParentEmail=studentParentContact[student]
tuition=studentTuition[student]
msg['To'] = ParentEmail
body="Hi, \nThe tuition for "+student+' is '+'$'+ str(tuition)
msg.attach(MIMEText(body, 'plain'))
text=msg.as_string()
print FLPEmail, ParentEmail, text
s.sendmail(FLPEmail, ParentEmail, text)
s.quit()
因此,不是将学生 A 的学费信息发送给 A 的父母,将学生 B 的学费信息发送给 B 的父母,将学生 C 的学费信息发送给 C 的父母,现在的实际结果是,它将 A 的学费信息发送给 A 和 B 以及 C 的父母。所有父母的学费相同。我该如何解决?非常感谢!
【问题讨论】:
-
你能把输入参数贴出来吗? studentParentContact & studentTuition