我正在用 python 发送电子邮件。现在,我想通过电子邮件发送列表中的条目,但遇到错误“TypeError:无法连接‘str’和‘list’对象”,我不知道如何调试它。以下是我的代码。我对这门语言还是新手(三周),所以我有一些背景知识。
import smtplib
x = [2, 3, 4] #list that I want to send
to = '' #Recipient
user_name = '' #Sender username
user_pwrd = '' #Sender Password
smtpserver = smtplib.SMTP("mail.sample.com",port)
smtpserver.ehlo()
smtpserver.starttls()
smtpserver.ehlo()
smtpserver.login(user_name,user_pwrd)
#Header Part of the Email
header = 'To: '+to+'\n'+'From: '+user_name+'\n'+'Subject: \n'
print header
#Msg
msg = header + x #THIS IS THE PART THAT I WANT TO INSERT THE LIST THAT I WANT TO SEND. the type error occurs in this line
#Send Email
smtpserver.sendmail(user_name, to, msg)
print 'done!'
#Close Email Connection
smtpserver.close()
问题在于msg = header + x
。您正在尝试应用+
字符串和列表的运算符。
我不太确定你想要什么x
要显示,但是,如果您想要类似“[1, 2, 3]”的内容,您将需要:
msg = header + str(x)
或者你可以这样做,
msg = '{header}{lst}'.format(header=header, lst=x)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)