我有一个文本文件(Students.txt)我需要读入python并将它们解析为变量first_name,middle_name,last_name,student_id。文本文件的前几行如下所示:
Last Name Midle Name First Name Student ID
----------------------------------------------
Howard Joe Moe howar1m
Howard Curly howar1c
Fine Ken Lary fine1l
我试过的代码
f = open("Students.txt")
for line in f:
fields = line.strip().split()
last_name = fields[0]
仅适用于姓氏,因为如果我尝试fields[1]
作为中间名,我会得到一个"列表索引超出范围"错误。我已尝试使用if not line.startswith('Middle Name'): continue
,但它无法识别该列。
有没有人有更好的方法来解决如何将它们解析为各自的变量?
答案 0 :(得分:0)
可能你应该使用readlines(),然后跳过每一行,跳过前两行。因此代码看起来像
f = open("Student.txt")
lines = f.readlines()
print lines
for line in lines[2:]:
fields = line.split()
last_name = fields[0]
middle_name = fields[1]