Newbie question: Tuples and reading csv files
kushal.kumaran+python at gmail.com
Mon Mar 29 17:42:37 CEST 2010
On Mon, Mar 29, 2010 at 9:01 PM, Gryff <gareth.sims at googlemail.com> wrote:
> Its been 20 years since I programmed, so I'm stepping back in via
> Python. However I'm beating my brains on tuples/lists (what I used to
> know as arrays). I've fooled around with small code snippets and tried
> a few things, but I can't figure out how to grab elements of
> tuples ...
> For example, I'm reading in a small csv file like this:
> import csv
> csvfile = open("example.csv")
> #sniff the dialect
> dialect = csv.Sniffer().sniff(csvfile.read(1024))
> # get file in using reader method
> reader = csv.reader(csvfile, dialect)
> # grab the lines into a reader and pass to mylist
> for row in reader:
> # now print something out to prove this worked
> print mylist[:3]
> and the output I get is:
> ['Date', 'Open', 'High', 'Low', 'Close', 'Volume', 'Adj Close']
> ['2010-03-05', '224.20', '230.70', '223.80', '228.30', '5051500',
> ['2010-03-04', '223.00', '228.50', '220.50', '224.50', '4040500',
> So far so good but not useful. My "mylist" has all the data in there,
> but I can only figure out how to get each line out!?!
> -> I want to get access to the individual items in each line. In my
> bad old days I'd have used an array and grabbed "mylist
> [row,item]" ...job done. Try as I like and after *lots* of reading
> around, I can't figure out whether:
mylist is a list of lists. mylist gives you the first list (the
row with the column headings, in your case). You can get the first
item in that list by mylist.
> a) I'm missing something...really...simple
> b) "You can't do that" (and I should just use numpy and arrays?)
> c) errrr....
> Like I said, basic/newbie question from a programmer who spent 20
> years away from it.
More information about the Python-list