如前所述,我是一个初学者,正在尝试做一些简短的练习。不幸的是,我的在线导师无法或不愿意帮助我(不断建议其他方法)。
我的任务是检查该行的第一个单词是否是“发件人”,在这种情况下,我需要打印下一个单词(电子邮件地址)。
例如,该文件有一系列如下所示的行
From stephen.marquard@uct.ac.za Sat Jan 5 09:14:16 2008
Return-Path: <postmaster@collab.sakaiproject.org>
Received: from murder (mail.umich.edu [141.211.14.90])
by frankenstein.mail.umich.edu (Cyrus v2.3.8) with LMTPA;
From louis@media.berkeley.edu Fri Jan 4 18:10:48 2008
Return-Path: <postmaster@collab.sakaiproject.org>
Received: from murder (mail.umich.edu [141.211.14.97])
代码应产生以下输出:
stephen.marquard@uct.ac.za
louis@media.berkeley.edu
我编写了以下代码来执行此操作:
fname = "mbox-short.txt"
f = open(fname,'r')
lines = f.readlines()
i = 0
count = len(lines)
while i < count :
test = lines[i].split()
if test[0] == "From " :
print(test[1])
i += 1
我不断收到以下错误:
Traceback (most recent call last):
File "C:\Users\38775\Desktop\py4e\Project 2\email.py", line 10, in <module>
if test[0] == "From " :
IndexError: list index out of range
我只是想了解为什么会发生这种情况,以及如何纠正这种情况。要求您不要花时间分享替代方案。
谢谢