【发布时间】:2018-06-14 21:28:24
【问题描述】:
如前所述,我是一名初学者,正在尝试做一些简短的练习。不幸的是,我的在线导师无法或不愿意帮助我(不断建议其他方法)。
我的任务是检查该行的第一个单词是否是“From”,在这种情况下,我需要打印下一个单词(电子邮件地址)。
例如,该文件有一系列如下所示的行
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
我只是想了解为什么会发生这种情况,以及如何纠正这种情况。请您不要花时间分享替代方案。
谢谢
【问题讨论】:
-
你能放一些实际的测试用例及其正确的输出吗?
-
你可以调试你的代码。
-
嘿 Rohit,我已经进行了编辑
-
问题本身有很多问题
-
嗯,这是我第一次。如果你指出它可能会有所帮助。
标签: python index-error