我正在阅读文本文件中的数据,并希望通过gpa命令数据。我写了下面的代码查看学生数据,包括学生姓名,成绩和学分,以便根据gpa,学分或姓名排列数据
import string
def main() :
my_list = []
# open the input file for reading
filename = raw_input("Enter name of the grade file: ")
infile = open(filename, 'r')
print infile
# process subsequent lines of the file
for line in infile :
name, hours, qpoints = line.split('\t')
gpa = float(qpoints)/float(hours)
my_tuple = (name, gpa)
print name, gpa
my_list += my_tuple
data = sorted(my_list, key = lambda x: gpa)
if __name__ == '__main__' :
main()
我得到一个错误的main()
我发现“line.split(” \ t')不给我所期望的输出。我不确定我做错了什么。我想,在尝试添加相容功能cmpGpa之前,我会先完成第一部分工作,感谢您的帮助。
你说输出“不正确”。究竟你得到了什么产出,以及它与预期产出相比如何? – ApproachingDarknessFish
请注意,您可以使用'infoStr.split('\ t')'而不是'string.split(infoStr,'\ t')' – justhalf