#python #python-2.7 #smtplib
#python #python-2.7 #smtplib
Вопрос:
Я пытаюсь добавить строковое значение в поле темы при отправке электронной почты с использованием smtplib, но, к сожалению, msg [‘Subject’] всегда выдает ошибку:
Ошибка типа: объект ‘str’ не поддерживает назначение элемента
Ниже приведен мой код:
for host in self.hostnames:
for h in host:
start = 'Create'
s = str(h)
l = str(self.lease)
u = str(self.username)
f = str(listFlavor)
subject = start ' ' s ' ' l ' ' u ' ' f
msg = 'Add Lease days of %s' % str(self.lease)
msg['Subject'] = subject
msg['From'] = self.username
msg['To'] = 'test@test.com'
s = smtplib.SMTP('test.test.com')
s.sendmail('test@test.com', self.username, msg.as_string())
s.quit()
Комментарии:
1.
msg
является строкой. Что вы ожидаетеmsg['Subject'] = subject
сделать?
Ответ №1:
да, это правда.
Я добавил эту строку для первоначального объявления msg.
msg = MIMEMultipart('related')
который является dict и содержит значения, добавленные к msg.