> >>> parseline( 'A 1 22 3 6', 'sdxf') > ['A', 1, None, 3.0]
Yes, but in this case the OP expects to get ['A',1,3.0]
A shorter version :
def parseline(line,format):
xlat = {'x':None,'s':str,'f':float,'d':int,'i':int}
result = [ xlat[f](w) for f,w in zip(format,line.split())
if xlat.get(f,None) ]
if len(result) == 0: return None
if len(result) == 1: return result[0]
return result
Pierre
--
http://mail.python.org/mailman/listinfo/python-list
