s = 4
e = 7
with f = file('path_to_file) as fp:
for line in f:
if line.startswith(name):
avg = sum(map(int, filter(ambda x : len(x) > 0,
s.split(' '))[s : e])) / (e - s)
On 20.02.2014 17:22, kxjakkk wrote:
Let's say I have a sample file like this:
Name 1 2 3 4 5 6 7 8
------------------------------------------------------------------------
name1 099-66-7871 A-F Y 100 67 81 59 98
name2 999-88-7766 A-F N 99 100 96 91 90
name3 000-00-0110 AUD 5 100 28 19 76
name4 398-72-3333 P/F Y 76 84 49 69 78
name5 909-37-3689 A-F Y 97 94 100 61 79
For name1, I want to add together columns 4, 5, 6, and get an average from
that, then do the same for the last two columns. I want to do this for every
name.
All I've got is
sum([int(s.strip()) for s in open('file').readlines()])
--
Johannes Schneider
Webentwicklung
[email protected]
Tel.: +49.228.42150.xxx
Galileo Press GmbH
Rheinwerkallee 4 - 53227 Bonn - Germany
Tel.: +49.228.42.150.0 (Zentrale) .77 (Fax)
http://www.galileo-press.de/
Geschäftsführer: Tomas Wehren, Ralf Kaulisch, Rainer Kaltenecker
HRB 8363 Amtsgericht Bonn
--
https://mail.python.org/mailman/listinfo/python-list