为了账号安全,请及时绑定邮箱和手机立即绑定

如何解决:“列表索引必须是整数或切片,而不是 str”

如何解决:“列表索引必须是整数或切片,而不是 str”

墨色风雨 2022-06-02 10:02:12
我是 python 新手,仍在学习它,我正在尝试制作一个脚本,将电子邮件发送到多个电子邮件,但我遇到了问题。它继续在第 9 行打印出错误:“列表索引必须是整数或切片,而不是 str”我对这意味着什么以及我需要做些什么来解决这个问题感到困惑。import smtplibfrom email.mime.text import MIMETextfrom email.mime.multipart import MIMEMultipartemail_list = ["First@email.com", "second@email.com", "third@email.com", "etc..."]num = 0for 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)我希望输出是,Emails Sent: 3,但它不会大声笑
查看完整描述

1 回答

?
万千封印

TA贡献1891条经验 获得超3个赞

在 pythonfor e in C中必须读作“对于集合 C 的每个元素 e”,这意味着在每次迭代中,都e取集合中不同元素的值C

在您的示例中,i将采用值“First@email.com”然后是“second@email.com”等...而不是 0、1... 您似乎相信。但是,当您这样做时,email_list[i]您会尝试获取列表的第 i 个值。这不起作用,因为我们看到那i是一个字符串。


查看完整回答
反对 回复 2022-06-02
  • 1 回答
  • 0 关注
  • 151 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信