On Nov 21, 7:59 am, Neil Cerutti <ne...@norwich.edu> wrote: > On 2011-11-21, ray <r...@aarden.us> wrote: > > > I am trying to get the data from a CSV file into variables. I have > > used DictReader to get the field names and I can report them. When I > > attempt to look at the data, every row shows the combination of > > fieldname:data. How do I get the data out?
> > linelist=open( "C:/Users/thisuser/Documents/Projects/Bootstrap Plan > > Design Tool/Sandbox/line_list_r0a.csv", "rb" ) > > csvDictReader=csv.DictReader( linelist, dialect='excel' ) > > for data in csvReader: > > print data[0] > > print data[1] > > print data[2] > > print data[3] > > linelist.close() > > The elements yielded by a DictReader iterator are dictionaries, > and the keys are the headings of the csv file. So replace those > integers with strings representing the headings of your file. > > If the headings are actually those numbers, you want: > > [...] > print data['0'] > print data['1'] > print data['2'] > print data['3'] > print data['4'] > [...] > > -- > Neil Cerutti > "This room is an illusion and is a trap devisut by Satan. Go > ahead and dauntlessly! Make rapid progres!" > --Ghosts 'n Goblins Neil, Thank you for your efforts. When I use the 0, 1, etc. in the data[x] slot, I get some data. When I put a string in, I get an error stating: TypeError: list indices must be integers, not str But your suggestion has helped my better understand my problem. The output is first a list of the keys and then the associated data. The difficulty is that I want to pass the data to another function will I am in the 'for' loop. But the first data out is keys and that is not the data I want to send to the other function. Is there a way to capture the keys outside of the for loop so when the for loop is entered, only data is extracted? Thanks, ray -- http://mail.python.org/mailman/listinfo/python-list