2016-10-20 5 views
1

をサポートしていない私がしたりするsmtplibを使用して電子メールを送信しながら、サブジェクトフィールドに文字列値を追加しようとしていますが、残念ながら、MSG [「件名」]は常にエラーをスローします:たりするsmtplibサブジェクトフィールドはTypeError:「strの」オブジェクトは、アイテムの割り当て

はTypeError: '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']  = '[email protected]' 

      s = smtplib.SMTP('test.test.com') 
      s.sendmail('[email protected]', self.username, msg.as_string()) 
      s.quit() 
+0

'msg'は文字列です。 'msg ['Subject'] =件名' 'は何を期待していますか? –

答えて

2

はい、それは本当です。

msgを最初に宣言するためにこの行を追加しました。辞書であり、MSGに付加価値を保持

msg = MIMEMultipart('related')

関連する問題