IndexError读取文本文件一行中的第一个单词时



我正在尝试迭代文本文件中的行,并且只想要以"From"开头的行。

如果我将行拆分为列表并检查零索引,我得到第一行(以"From"开始),但随后我得到IndexError:列表索引超出范围.

当我没有split字符串,只是使用line.startswith("From")方法它工作。

file_name = input("Enter file name: ")
try:
fhandle = open(f"./src/{file_name}", "r")
except:
print("file open err")
quit()
for line in fhandle:
line = line.strip()
words = line.split()
# IndexError
if words[0] == "From": print(line)
# This works
if line.startswith("From"): print(line)
fhandle.close()

应该可以了-

with open('file.txt', 'r') as f:
res = [line.strip() for line in f if line.strip().startswith('From')]

这会给你一个以开头的行列表From.

相关内容

  • 没有找到相关文章

最新更新