有一个文件以相同的顺序包含以下信息:LastName FirstName IDnumber score1 score2 finalScore。我的目标是确定整个文件的最低 finalScore 以及获得该分数的学生的 IDnumber。这就是我所拥有的,但我不确定如何将 IDnumber 与分数相关联。
scores = open('text.txt', 'w')
scores.write('Johnson Jeff 1213 91 92 94\n')
scores.write('Johnson Alan 5553 81 82 84\n')
scores.write('Johnson Bart 8973 91 82 98\n')
scores.close()
grades = open('text.txt','r')
listy = []
for i in grades:
a = i.split()
for j in a[3:]:
listy.append(j)
print(min(listy))
最佳答案
使用字典会很容易。但是,如果您想按照现在的方式进行操作,您可以使用带有自定义键的 min(..)
。
>>> s = ['Johnson Jeff 1213 91 92 94', 'Johnson Alan 5553 81 82 84', 'Johnson Bart 8973 91 82 98']
>>> min(s, key=lambda x: int(x.split()[5]))
'Johnson Alan 5553 81 82 84'
关于Python——读取文件并确定最低分数和人,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20675108/