无法更改python中实例的值

时间:2014-04-25 00:48:32

标签: python instance

我正在尝试使用MIME并使用以下代码发送电子邮件。但是python无法改变消息的价值['主题']。我做错了什么?有什么建议吗?

由于

msg = MIMEText('MAIL from my python programme')
msg['Subject'] = 'Testing '
msg['From'] = USERNAME
msg['To'] = MAILTO

test_var=1

if(test_var):
    msg['Subject'] = 'Test variable is 1'
else:
    msg['Subject'] = 'Test variable is 0'

server = smtplib.SMTP('smtp.gmail.com:587')
server.ehlo_or_helo_if_needed()
server.starttls()
server.ehlo_or_helo_if_needed()
server.login(USERNAME,PASSWORD)
server.sendmail(USERNAME, MAILTO, msg.as_string())
server.quit()
print "sending email"

1 个答案:

答案 0 :(得分:1)

据我所知,您必须在替换之前删除Subject字段(或任何其他字段)。否则,它只会附加更多主题 - 可能会被忽略,看起来价值不会改变。

test_var=1

del msg['Subject']
if(test_var):
    msg['Subject'] = 'Test variable is 1'
else:
    msg['Subject'] = 'Test variable is 0'