仅当我包括下面注释掉的打印行时,才会出现此问题。
fname = input("Enter file name: ")
if len(fname) < 1:
fname = "mbox-short.txt"
fh = open(fname)
i = 0
count = 0
with open(fname, 'r') as fh:
for line in fh:
temp = line.split()
#print(temp[0])
count+=1
print(count)
答案 0 :(得分:2)
当您尝试分割一个空字符串时,它将返回一个空列表:
>>> ''.split()
[]
由于这个原因,尝试访问temp[0]
会引发IndexError
异常,并且您的处理将停止。您可以这样修复它:
if not line: # line is blank
continue
答案 1 :(得分:0)
当一行为空时,temp
也为空。没有temp[0]
要打印,Python以未捕获的IndexError
终止。