On 11/12/2013 19:10, brian cleere wrote:
I know the problem is with the for loop but don't know how to fix. Any help
with explanation would be appreciated.
#!/bin/env python
import csv
You never use the csv module.
import sys
if len(sys.argv) < 3:
print('Please specify a filename and column number: {} [csvfile]
[column]'.format(sys.argv[0]))
sys.exit(1)
filename = sys.argv[1]
column = int(sys.argv[2])
for line in filename() , column ():
You're trying to loop around the filename and the column, you need to
open the file and loop around that.
elements = line.strip().split(',')
Please don't do this when you've got the csv module to do things for you.
values.append(int(elements[col]))
Where did values come from? Is it col or column, please make your mind up?
So let's stick things together. Something like.
values = []
with open(filename) as csvfile:
valuereader = csv.reader(csvfile)
for row in valuereader:
values.append(int(row[column]))
csum = sum(values)
cavg = sum(values)/len(values)
print("Sum of column %d: %f" % (col, csum))
print("Avg of column %d: %f" % (col, cavg))
I like consistency, new style formatting here, old style above, still if
it works for you.
--
My fellow Pythonistas, ask not what our language can do for you, ask
what you can do for our language.
Mark Lawrence
--
https://mail.python.org/mailman/listinfo/python-list