我正试图编写一个程序,从一个列表中读取一系列名称和数字,如下所示:
5
Jim
79 84 82
Bob
32 12 47
Kelly
90 86 93
Courtney
80 99 89
Chad
89 78 91
数字格式为:
<Assignment score> <Quiz Score> <Exam Score>
每个的乘数是:
.3 .1 .6
目前我有:
def main():
inFile = open("input.txt","r")
numVals = int(inFile.readline())
for i in range(numVals):
name = inFile.readline()
numbers = inFile.readline().split()
for n in range(len(numbers)):
numbers[n] = float(int(numbers[n]))
avg = float(numbers[0]* .3 + numbers[1]* .1 + numbers[2]* .6)
print(name, "'s Score is",avg,"%.")
inFile.close()
main()
我的输出应该如下所示:
Jim’s score is <avg>.
Bob’s score is <avg>.
Kelly’s score is <avg>.
Courtney’s score is <avg>.
Chad’s score is <avg>.
但我得到的却是:
Kelly
's Score is <avg> %.
有没有办法让打印出来的文件中的每一个名字和每一行数字?提前谢谢!你知道吗
所以你有5个记录,每个记录有2行。第一个任务是正确地接收这些信息。您可以通过
fin.readline()
或next(fileobject)
获得一行代码,这也适用于python3.x。你知道吗到目前为止,这与您所拥有的并没有太大区别:
您需要从readline的结果中去掉尾随的换行符。你知道吗
可能是这样的:
相关问题 更多 >
编程相关推荐