Tommy Grav schrieb: > Hi list, > > this is somewhat of a newbie question that has irritated me for a > while. > I have a file test.txt: > > 0.3434 0.5322 0.3345 > 1.3435 2.3345 5.3433 > > and this script > lines = open("test.txt","r").readlines() > for line in lines: > (xin,yin,zin) = line.split() > x = float(xin) > y = float(yin) > z = float(zin) > > Is there a way to go from line.split() to x,y,z as floats without > converting > each variable individually? > > Cheers > Tommy
For this case, there are list comprehensions (or map, but you shouldn't use it any longer): >>> a = "0.3434 0.5322 0.3345" >>> b = a.split() >>> map(float, b) [0.34339999999999998, 0.53220000000000001, 0.33450000000000002] >>> [float(x) for x in b] [0.34339999999999998, 0.53220000000000001, 0.33450000000000002] I think it should be easy to apply this to your example above. Stargaming -- http://mail.python.org/mailman/listinfo/python-list