About the piece of code you posted, there is something I don't understand. for i, line in data:
where data is a file object. Is it legal to write that? I believe it results in "too many values to unpack" or do I miss something? /Ben On Dec 4, 10:26 am, [EMAIL PROTECTED] wrote: > Matt, really thanks for your comments! > Even thogh it was not a direct answer to my questions, > I like your coding style very much and I think you have a good point. > > About the number of line in the file, because I get that info from > another > in advance. Therefore I thought it could be hard coded. > > BTW, could you recommend a book or a note on points you have mentioned > so that I can learn more like that? > > Thanks, > /Ben > > > # this is just bad style in python: > > line = fil.next(); spl = line.split() > > # better written > > spl = fil.next().split() > > > I would just do it this way: > > > def read_as_list(data, regions=25, maxlines=20000): > > # If data is a filename, open the file. If it is a file > > # object or any sequence of 'lines' it should just work. > > > file_opened = False > > if isinstance(data, basestring): > > data = open(data, 'r') > > file_opened = True > > > forces = [[] for _ in xrange(regions)] > > try: > > for i, line in data: > > if i == maxlines: > > break > > forces[i % 25].append(line.split()) > > finally: > > if file_opened: > > f.close() > > return forces > > > Matt > > -- http://mail.python.org/mailman/listinfo/python-list