On Sun, Aug 23, 2009 at 4:27 PM, mm<matta...@gmail.com> wrote: > Hi, I'm trying to replace this... > > # this works but there must be a more pythonic way, right? > tlist = [] > for obj in self.objs: > t = obj.intersect(ray) > if (t != None): > tlist.append((obj,t)) > > with a list comprehension- can it be done?
Yes: tlist = [pair for pair in ((obj, obj.intersect(ray)) for obj in self.objs) if pair[1] is not None] Should it be done? Probably not. It's less readable and less efficient. Cheers, Chris -- http://blog.rebertia.com -- http://mail.python.org/mailman/listinfo/python-list