The sum of numbers in a line from a file

MRAB python at mrabarnett.plus.com
Thu Feb 20 14:17:11 EST 2014


On 2014-02-20 18:16, kjakupak at gmail.com wrote:
> What I've got is
> def stu_scores():
>      lines = []
>      with open("file.txt") as f:
>          lines.extend(f.readlines())
>      return ("".join(lines[11:]))
>
> scores = stu_scores()
> for line in scores:
>      fields = line.split()
>      name = fields[0]
>      sum1 = int(fields[4]) + int(fields[5]) + int(fields[6])
>      sum2 = int(fields[7]) + int(fields[8])
>      average1 = sum1 / 3.0
>      average2 = sum2 / 2.0
>      print ("%s %f %f %") (name, average1, average2)
>
> It says that the list index is out of range on the sum1 line. I need stu_scores because the table from above starts on line 11.
>
Apart from the other replies, the final print is wrong. It should be:

     print "%s %f %f" % (name, average1, average2)




More information about the Python-list mailing list