我是python的新手,还在学习python,我正在尝试编写一个脚本,可以向多个电子邮件发送电子邮件,但是我遇到了一个问题。它不断打印出第9行的错误:
列表索引必须是整数或片,而不是str
我不明白这意味着什么,我需要做些什么来解决这个问题
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
email_list = ["First@email.com", "second@email.com", "third@email.com", "etc..."]
num = 0
for i in email_list:
msg['To'] = email_list[i] #this line gives the error
num = num + 1
server.sendmail(email, email_list[i], text)
print("Emails Sent: " + num)
我希望输出是,电子邮件发送:3,但它没有笑
在python中
for e in collections
必须读作“对于集合中的每个元素e”,这意味着e
取集合中每个元素的值在您的示例中,
i
将采用First@email.com“那么”second@email.com“等等。。而不是0,1。。。正如你所相信的。 但是,当您执行email_list[i]
时,您试图获取列表的第i个值。因为我们看到i
是一个字符串,所以它不能工作相关问题 更多 >
编程相关推荐