如何解决使用IMAPClient,列表索引是否超出for for in in in List循环?
我不确定是否缺少明显的东西。我正在尝试检索电子邮件并对其进行遍历,以查找文本中的特定项目。该代码运行,但是在遍历所选文件夹中的项目的过程中抛出“列表索引超出范围”错误。我看不到要迭代的列表是要与之在一起的索引位置的列表怎么发生?
我正在使用IMAPClient程序包,并且我的脚本选择了正确的文件夹,并找到具有特定主题的电子邮件,然后返回列表
client.select_folder('WebsiteMessages',readonly=True)
result = client.search('SUBJECT "User Details"')
print(result)
[1,2,9,10,11,15,19,22,23,24,25,26,27,28,30,32,36,46,48,49,51,55,57,60,61]
如果我尝试遍历该列表,则会到达特定点,然后使列表索引超出范围错误。
for i in result:
message = client.fetch(result[i],b'RFC822')
print(message)
我不知道看到该列表是由搜索生成的,该错误如何发生?有什么想法吗?
解决方法
未经测试,只是一个猜测:
for i in result:
message = client.fetch(i,b'RFC822')
print(message)
i
已经是该值,使用它作为该值的索引是不正确的。
第二种解决方案,可能是您想要的:
for i in range(result):
message = client.fetch(result[i],b'RFC822')
print(message)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。