[Tutor] Reading Input Data

Michael Langford mlangford.cs03 at gtalumni.org
Tue Jan 15 21:47:53 CET 2008


for subscript,line in enumerate(file("file.csv")):
     s = line.split(",")[1]
     try:
	     f = float(s)
	     locals()["x%i" % subscript]=f
     except:
	     locals()["x%i" % subscript]=s

print x1
print x

On Jan 15, 2008 3:26 PM, lechtlr <lechtlr at yahoo.com> wrote:
> I want to read an input file (file.csv) that has two columns. I want to read
> 2nd column and assign variables that are strings and floats. Currently, I
> use the following split() function to read from the input file and create a
> list, and then assign each element to a variable.
>
> I am wondering there is any other easier (and elegant) way of doing this ?
>
> data = []
> for line in open("file.csv"):
>      columns = line.split(',')
>      data.append([columns[1]])
>
> This script returns, say:
> data = [ ['20.0'], ['0.34'], ................,[ 'a:0.20, b:0.30, c:0.50' ]]
>
> Then, I assign to a set of variables, say:
>
> x1 = float(data[0][0]) ; x2 = float(data[1][0]);.............;xn =
> data[-1][0]
>
>
> Thanks,
> Lex
>
>
>
>
>
>
>
>
>  ________________________________
> Never miss a thing. Make Yahoo your homepage.
> _______________________________________________
> Tutor maillist  -  Tutor at python.org
> http://mail.python.org/mailman/listinfo/tutor
>
>



-- 
Michael Langford
Phone: 404-386-0495
Consulting: http://www.RowdyLabs.com


More information about the Tutor mailing list